classe Noeud{
private:
string nom;
Noeud** adjacent;
int adjNum;
public:
Noeud();
Noeud(string, int adj_num);
Noeud(const Noeud &);
bool ajouterAdjacent(const Noeud &);
Noeud** getAdjacents();
string getNom();
~Noeud();
};
bool Noeud::ajouterAdjacent(const Noeud &unoeud){
Noeud** temp;
temp= new Noeud*[adjNum+1];
for(int i=0;i(&unoeud);
delete[] adjacent;
adjacent=new Noeud*[adjNum+1];
adjacent=temp;
delete[] temp;
adjNum++;
return true;
}
int main()
{
Noeud noeud1("A",0);
Noeud noeud2("B",0);
noeud1.getNom();
noeud1.ajouterAdjacent(noeud2);
system("PAUSE");
return 0;
}
quand le programme arrive à cette partie:
for(int i=0;i
`
il affiche Violation d'accès à l'emplacement de lecture 0xcccccccc. La classe doit allouer la mémoire pour adjacent, mais je pense qu'elle ne l'a pas faite, comment puis-je résoudre ce problème ?
`