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!
Partager