View Full Version : Costruttore di Copia
Kleidemos
19-03-2003, 18:40
Quali sono i vantaggi dei Costruttore di Copia?
Tnk&Ciao
Hai un oggetto A ne devi costruire uno nuovo esattamente uguale ad A...
--> costruttore per copia ;)
Che vuol dire vantaggi ?!?!??
Il costruttore di copia esiste comunque...al massimo lo puoi sovrascrivere...
Il costruttore di copia predefinito non fa altro che copiare campo campo i dati di una classe in quella di un'altra da costruire...
Il costruttore di copia lo puoi richiamare in diversi modi...
Esplicitamente:
classe a;
classe b(a); //questo è il costruttore di copia
Implicitamente:
classe a;
classe b = a;
int f(classe c){
//c viene creata tramite il costruttore di copia...
}
f(a); //viene richiamato per creare la variabile c locale alla funz. f
E' necessario ridefinirlo ogni volta che nella classe si hanno strutture con allocazione dinamica o in casi particolari voluti dal programmatore...
Kleidemos
19-03-2003, 20:06
grazie!
miondere
24-03-2003, 02:23
Originally posted by "cionci"
per creare la variabile c locale alla funz. f
E' necessario ridefinirlo ogni volta che nella classe si hanno strutture con allocazione dinamica o in casi particolari voluti dal programmatore...
Nel caso di allocazione dinamica, tipo liste o vettori dichiarati con NEW, la ridefinizione del costruttore di copia mi serve per copiare tutta la memoria, vero?
Altrimenti senza la ridefinizione mi copia solo il puntatore. E' così?
Ho un pò le idee confuse, anche perchè sono alle prime armi con il C++ :p
Ciao
Sì...proprio per quello...
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.