Slt, je suis actuellement sur un petit projet. J'essaye de recréer une map. Je crée donc un arbre mais j'ai un problème de pointeur sur mes noeuds...

Voici l'erreur :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
./TestCMap.o: In function `Tests::TestCMap::runTest()':
TestCMap.cxx:(.text+0xca3): undefined reference to `nsCont::CNoeud<std::pair<int, int> >::CNoeud(nsCont::CNoeud<std::pair<int, int> >*, std::pair<int, int>, nsCont::CNoeud<std::pair<int, int> >*, nsCont::CNoeud<std::pair<int, int> >*)'
TestCMap.cxx:(.text+0xce6): undefined reference to `nsCont::CNoeud<std::pair<int, int> >::CNoeud(nsCont::CNoeud<std::pair<int, int> >*, std::pair<int, int>, nsCont::CNoeud<std::pair<int, int> >*, nsCont::CNoeud<std::pair<int, int> >*)'


Donc dans ma fonction de test, j'ai cette erreur dès que j'ajoute cette ligne dans ma méthode insert :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
m_Sommet = new Noeud_t(0, make_pair(Obj, Clee));

ma classe CMap est doublement générique avec un type T et un type Cle.
Obj, l'objet de type T à insérer et Clee la clée de type Cle à insérer.
m_Sommet est le sommet de l'arbre de ma map de type pNoeud_t
Noeud_t est un type défini dans ma classe CMap qui est :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
typedef CNoeud< std::pair < T, Cle > > Noeud_t;
typedef Noeud_t* pNoeud_t;

Cette erreur arrive dès que j'essaye de créer un noeud donc!

Quelqu'un saurait-il d'où cela pourrait-il venir?

Merci d'avance!