Salve a tutti raggazzi e ragazze..stavo scrivendo del codice e mi sono ritrovato con un dubbio inaspettato
vi posto il codice:
Il problema si pone per le righe commentate non l-value in assignment. Qualcuna sa spiegarmi il motivo per cui le due righe successive fanno compilare il codice e quella commentata non mi danno il suddetto errore?codice:void Albero::AddNodo() { char risp=scelta_nodo(); //ritorna s o n per scegliere su quale nodo inserire il nuovo dato if(risp=='s') if(!(corrente->GetNextSx())){ //GetNextSx() ritorna il puntatore al nodo successivo a sinistra //corrente è il puntatore all'elemento corrente int d; cout<<"Inserisci il dato per il nodo: "; cin>>d; // (corrente->GetNextSx())=new Nodo(d); Nodo* tmp=corrente->GetNextSx(); tmp=new Nodo(d); corrente=corrente->GetNextSx(); return; } if(risp=='d') if(!(corrente->GetNextDx())){//GetNextDx() analogo di GetNextSx() ma il dx int d; cout<<"Inserisci il dato per il nodo: "; cin>>d; // corrente->GetNextDx()=new Nodo(d); Nodo* tmp=corrente->GetNextDx(); tmp=new Nodo(d); corrente=corrente->GetNextDx(); return; } cout<<"Il nodo scelto contiene gia' un dato"<<endl; }
La zona di memoria puntata è sempre la stessa.
Ringrazio sempre in anticipo.
--