Ciao!
Nel mio programma voglio semplicemente creare due liste di caratteri, per poi visualizzarle in un'unica lista. Utilizzo una classe per far ciò, l'inserimento dei caratteri termina quando si digita 'z' o 'Z'. Il problema che non riesco ancora a risolvere è che la funzione 'Union' non stampa a video la lista unita.. L'inserimento avviene credo correttamente, ma non visualizzo nulla, poi il programma si chiude.
Questa è la funzione 'Union' che dovrebbe unire le due liste e stamparle una accanto all'altra :

codice:
void UnionL::Union(UnionL* l1, UnionL* l2) {
  cout << "Gli elementi della lista 'unione' sono i seguenti : \n\n";
  while( l1->get_nxt() ) {                        /* Stampa gli elementi della 1-a lista. */
    cout << "[ " << l1->get_car() << " ] ";
    l1 = l1->get_nxt();
  }
  l2 = l1->get_nxt();                     /* E' corretta quest'assegnazione?? */
  while( l2->get_nxt() ) {                        /* Stampa gli elementi della 2-a lista. */
    cout << "[ " << l2->get_car() << " ] ";
    l2 = l2->get_nxt();
  }
  cout << "\n\n";
}
Io credo sia qui l'errore. Il metodo precedente, che non ho summenzionato è 'creaLista()', che ha il compito di popolare le 2 liste di caratteri; nel main() ho dichiarato 2 puntatori alla 1-a e 2-a lista ed un puntatore al primo elemento 'start' = NULL.
Chiamo le funzioni in questo modo :

codice:
  lista1 = new UnionL();
  lista1->creaLista(start);
  system("PAUSE");
  
  lista2 = new UnionL();
  lista2->creaLista(start);
  system("PAUSE");
  
  start->Union(lista1, lista2);

Qualche suggerimento?