PDA

View Full Version : [C++] Template annidati


lishi
13-05-2009, 16:01
è possibile avere template annidati in c++?

Per esempio ho provato questo ma mi da un errore

QList<(boost::shared_ptr<FSImage)> list;


main.cpp:12: error: template argument 1 is invalid
main.cpp:12: error: template argument 1 is invalid
main.cpp:12: error: invalid type in declaration before ‘;’ token
main.cpp:13: error: request for member ‘append’ in ‘list’, which is of non-class type ‘int’
main.cpp:14: error: request for member ‘clear’ in ‘list’, which is of non-class type ‘int’
make: *** [main.o] Errore 1

||ElChE||88
13-05-2009, 16:03
manca un >

lishi
13-05-2009, 16:07
manca un >

hai ragione :asd:

Mi è scappato mentre riscrivevo il codice. Comunque non era quello errore

sistemando opportuna >

QList<(boost::shared_ptr<FSImage>)> list;


main.cpp: In function ‘void init()’:
main.cpp:12: error: template argument 1 is invalid
main.cpp:12: error: invalid type in declaration before ‘;’ token

Tommo
13-05-2009, 17:52
QList< boost::shared_ptr<FSImage> > list;


Così dovrebbe andare, perchè hai messo le parentesi?

Ricorda anche di staccare le ultime due >> perchè qualche compilatore si lamenta che è uguale all'operatore shift.
Almeno quello di CUDA :asd: