Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
appunti3s:costruttore [2017/07/09 12:33]
profpro
appunti3s:costruttore [2018/04/25 07:55] (current)
Line 10: Line 10:
  
  
-Poiché ​la classe è un nuovo tipo di dato, esso deve descrivere, oltre alla struttura dei dati e delle sue funzioni membro, anche come (1)//​riservare//,​ (2)//​inizializzare//​ e infine (3)//​liberare//​ la memoria ​da esso occupata. Il //​costruttore//​ serve per riservare ed inizializzare la memoria. La liberazione è fatta dal //​distruttore//​.+Dato che la classe è un nuovo tipo di dato, essa deve descrivere, oltre alla struttura dei dati e delle sue funzioni membro, anche come (1)//​riservare//,​ (2)//​inizializzare//​ e infine (3)//​liberare//​ la memoria occupata ​da ogni oggetto di tale classe. Il //​costruttore//​ serve proprio ​per le prime due esigenze: ​riservare ed inizializzare la memoria. La liberazione, invece, ​è fatta dal //​distruttore//​.
  
 Il //​costruttore//​ è una funzione che permette di realizzare (creare) gli oggetti in memoria, di un certo tipo di dato (la classe). Il //​costruttore//​ è una funzione che permette di realizzare (creare) gli oggetti in memoria, di un certo tipo di dato (la classe).
 Il compilatore permette di usare un costruttore di default (predefinito),​ ma anche di dichiarare ​ diversi costruttori personalizzati che differiscono dal primo solo per i parametri che gli vengono passati. Il compilatore permette di usare un costruttore di default (predefinito),​ ma anche di dichiarare ​ diversi costruttori personalizzati che differiscono dal primo solo per i parametri che gli vengono passati.
 +
 ====Dichiarazione==== ====Dichiarazione====
 +
 La //​dichiarazione//​ costruttore assomiglia a quella di una normale funzione membro, ma a differenza di questa: La //​dichiarazione//​ costruttore assomiglia a quella di una normale funzione membro, ma a differenza di questa:
   - non restituisce nulla (neppure void);   - non restituisce nulla (neppure void);
Line 23: Line 25:
 ContoCorrente conto1; ContoCorrente conto1;
 </​code>​ </​code>​
 +
 +Il codice appena visto deve essere inserito nel contesto di questo esempio: [[appunti3s:​esempio_di_programmazione_orientata_agli_oggetti]]
  
 Codice della chiamata di un altro costruttore,​ con qualche argomento, per creare conto2 con un saldo iniziale di 90 euro. Codice della chiamata di un altro costruttore,​ con qualche argomento, per creare conto2 con un saldo iniziale di 90 euro.
  • appunti3s/costruttore.txt
  • Last modified: 2018/04/25 07:55
  • (external edit)