On Thu, 10 May 2001 17:07:03 +0200 (MET DST) "Jacek M. Holeczek" <holeczek@us.edu.pl> wrote concerning ": [ROOT] root(cint) and template": > Hi, > What's wrong in : > class Complex<float> > { > public: > (...) > Complex& operator+= (const Complex& r) { return __gsl_doapl (this, r); } > (...) > } > that I keep getting : > Syntax Error: Complex&operator+=(constComplex&r) FILE:FComplex.hxx LINE:44 > Thanks in advance, > Jacek. > it should be #include<iostream> template<class T> class Complex { public: T c; Complex<T>& operator+=(Complex<T>& r) { c += r.c ; return *this; } }; int main() { Complex<float> a, b; a.c = 10; b.c = 11; cout << "a: " << a.c << "b: " << b.c << endl; b += a; cout << "a: " << a.c << "b: " << b.c << endl; return 0; } ANSI/ISO C++ is very specific on this point. You _must_ provide the template parameter in methods, etc. How are the GSL wrappers coming along? Yours, Christian ----------------------------------------------------------- Holm Christensen Phone: (+45) 35 35 96 91 Sankt Hansgade 23, 1. th. Office: (+45) 353 25 305 DK-2200 Copenhagen N Web: www.nbi.dk/~cholm Denmark Email: cholm@nbi.dk
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:45 MET