Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2011
    Messaggi
    29

    [C++] Utilizzare funzioni public nel costruttore di copia

    Salve a tutti! Sto lavorando ad una classe di liste linkate. Il mio unico problema è riguardo al costruttore di copia e all'operatore di assegnazione. Potrei usare le funzioni di insertimento per costruire la lista?
    Ovvero qualcosa del tipo:

    codice:
    Lista::Lista(const Lista & l){ 
             ptr=0;
             L temp=l.ptr;
             while(temp){ 
                   insert(temp->elem);
                   temp=temp->next;
                   }
     }
    Se invece non si può, come potrei fare?
    Grazie in anticipo per l'aiuto

  2. #2
    Hai provato?

    (sì, si può, ma ovviamente, dato che sei nel costruttore, devi essere sicuro che l'oggetto sia già "abbastanza" costruito perché i vari membri possano funzionare correttamente)
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2011
    Messaggi
    29
    Originariamente inviato da MItaly
    Hai provato?
    Si avevo già provato e funziona, solo che non mi sembrava una cosa troppo corretta dal momento che un costruttore dovrebbe poter costruire a prescindere dalle funzioni di una classe!

    Originariamente inviato da MItaly
    (sì, si può, ma ovviamente, dato che sei nel costruttore, devi essere sicuro che l'oggetto sia già "abbastanza" costruito perché i vari membri possano funzionare correttamente)
    In merito a ciò posso mettere dei controlli iniziali che verifichino che la classe sia "abbastanza costruita :P

    Grazie mille per la risposta

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.