Question

Ainsi, ce nouveau nœud est censé être inséré après le dernier nœud. Je ne peux pas comprendre pourquoi cela ne se produit pas. Remarque: La liste a plusieurs éléments avant que cette fonction ne soit appelée (environ 5), donc pour l'instant, elle n'a qu'à fonctionner pour ce cas. Le dernier nœud doit pointer vers le nœud supérieur et le pointeur supérieur> PREV doit pointer vers le dernier nœud. Où ai-je mal tourné? Je suppose que c'est faux au fait car le dernier nœud n'imprime jamais lorsque la fonction d'impression est appelée

void CircularDLL::insertAfterLast (int id, string name, string email, int age)
{
 Node* N=new Node;

 N->stId=id;
 N->stName=name;
 N->stEmail=email;
 N->stAge=age;

 Node* Q=top;

 while(Q->next!=top)//get to the last node
 {
  Q=Q->next;
 }
 cout<<"Q next is top now"<<endl;
 Q->next=N;
 N->prev=Q;
 N->next=top;
 top->prev=N;

}

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top