323
contributi
Nessun oggetto della modifica |
m (→I distruttori) |
||
Mentre ci possono essere più costruttori, il distruttore, se presente, è unico, e non riceve parametri.
Viene identificato dal fatto che il suo nome è uguale a quello
Ecco un programma completo che usa costruttore e distruttore:
using namespace std;
struct String {
String(const char * s = "") { // Costruttore
lunghezza_ = strlen(s);
capacita_ = lunghezza_ + 1;
strcpy(array_, s);
}
~String() { delete array_; } // Distruttore
const char *c_str() const { return array_; }
char * array_; // Array di caratteri
La variabile "s1" non è inizializzata esplicitamente, ma il suo costruttore viene chiamato comunque, senza parametri; quindi viene usato il valore di default dell'unico parametro.
Le variabili "s2" e "s3" sono
È stata aggiunta anche la funzione "c_str" per rendere l'uso della classe identico a quello della classe standard "string".
|
contributi