Bonjour,
Voilà j'ai un probleme avec un template sur une classe qui herite déjà d'une autre.
la classe NodeVisitor herite elle meme virtuellement d'une autre, des fois que ça change qqch ...Code:
1
2
3 template <typename T> class FindKindNodes : public osg::NodeVisitor
la compilation de mon template se passe bien, mais lors de l'utilisation, j'ai une erreur error C2664 :
L'erreur est :Code:
1
2
3 FindKindNodes<osgParticle::ModularEmitter> fnn(); node->accept(fnn); //erreur ici
la méthode accept() a pour prototype exact :Citation:
error C2664: 'osg::Node::accept'*: impossible de convertir le paramètre 1 de 'FindKindNodes<T> (__cdecl *)(void)' en 'osg::NodeVisitor &'
1> with
1> [
1> T=osgParticle::ModularEmitter
1> ]
Mon template herite bien de NodeVisitor ... alors pourquoi le compilateur refuse ?Code:virtual void accept(NodeVisitor& nv);
N'importe qu'elle idée sera la bienvenue :-)
Merci.