[C++] Derive a class from a tamplate

Nusret BALCI balcinus@yahoo.com
Sun Jul 31 20:04:00 GMT 2005


Hey,
it seems that only one single cast is enough. Sorry,
I'm not a professional programmer: this seems to work
fine though..

--- stefano luceri <stefano@communicationfactory.it>
wrote:

> Hello to all .... excuse for my bad english
> 
> I've the following problem writing a simple program.
> I would use the 
> metods of std::valarray class adding some self
> writed method for elemnts 
> of double type.
> 
> I've thought something like this:
> 
> /****************************/
> using namespace std;
> 
> class mvector : public valarray<double>
> {
> mvector();
> mvector(int size);
> }
> 
> mvector :: mvector() : valarray<double>() {}
> mvector :: mvector(int size) :
> valarray<double>(size) {}
> 
> int main()
> {
>    mvector v(3);
>   
>    v = (v+2.0);
> }
> 
> /*****************************/
> 
> Compiling this code I obtain the following error:
> 
> geom.cpp: In function `int main()':
> geom.cpp:38: error: no match for 'operator=' in 'v =
> std::operator+(const
>   std::valarray<_Tp>&, const _Tp&) [with _Tp =
> double]((&1.0e+0))'
> geom.cpp:22: error: candidates are: mvector&
> mvector::operator=(const 
> mvector&)
> make: *** [geom.o] Error 1
> 
> Why can't I use the operator = like I do with
> valarray?
> 
> 
> 
> 
> 
> 



		
____________________________________________________
Start your day with Yahoo! - make it your home page 
http://www.yahoo.com/r/hs 
 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: a.cpp
URL: <https://gcc.gnu.org/pipermail/gcc-help/attachments/20050731/bcfaf388/attachment-0001.ksh>


More information about the Gcc-help mailing list