inline ABObj<MT,MAT1,T>
operator-(
const ABObj<MT,MAT1,T>&
m) {
\
return ABObj<MT,MAT1,T> (m.Obj(),
T(-1.)*m.f());\
}\
\
inline ABObj<MT,ABSum<ABObj<MT,MAT1,T>, ABObj<MT,MAT1,T> >,
T>
operator+(
const ABObj<MT,MAT1,T>&
a,
const ABObj<MT,MAT1,T>& b) {
\
return ABObj<MT,ABSum<ABObj<MT,MAT1,T>, ABObj<MT,MAT1,T> >,
T>(ABSum<ABObj<MT,MAT1,T>, ABObj<MT,MAT1,T> >(
a, b)); \
} \
inline ABObj<MT,ABSum<ABObj<MT,MAT1,T>, ABObj<MT,MAT1,T> >,
T>
operator-(
const ABObj<MT,MAT1,T>&
a,
const ABObj<MT,MAT1,T>& b) {
\
return ABObj<MT,ABSum<ABObj<MT,MAT1,T>, ABObj<MT,MAT1,T> >,
T>(ABSum<ABObj<MT,MAT1,T>, ABObj<MT,MAT1,T> >(
a,ABObj<MT,MAT1,T> (b.Obj(),
T(-1.)*b.f()))); \
}
TTime operator-(const TTime &t1, const TTime &t2)
TString operator+(const TString &s1, const TString &s2)
Use the special concatenation constructor.