Bonjour , j'ai une structure monceau (priority_queue) dont les éléments sont une structure NoeudMonceau que j'ai crée comme suit :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
struct NoeudMonceau{
      double NMdistance;
      long idSommet;
      NoeudMonceau(double,long);
      bool operator < (const NoeudMonceau& n)const {return this->NMdistance > n.NMdistance;}
 
};

pour inserer la structure NoeudMonceau dans le monceau je fais comme suit :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
priority_queue<NoeudMonceau> pq1;
pq1.push(NoeudMonceau(0.0,IDa));
sachant que IDA et une variable que j'ai déjà calculé.
L'erreur que j'ai eu c'est : référence indéfinie vers " NoeudMonceau::NoeudMonceau(double ,long)".
je ne vois pas comment résoudre ça.

En plus comme vous le remarquez , j'ai défini l'opérateur '<' inversement , pour avoir le noeud le plus petit au sommet contrairement à ce que la priority_queue donne . Je sais pas aussi si c'est juste ou pas .

Merci d'avance.