Erreur à rallonge sur les pointeurs.
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:
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:
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:
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!