Il costruttore predefinito viene utilizzato per generare gli oggetti senza un valore iniziale predefinito. Un costruttore può avere parametri predefiniti e valori predefiniti. Se l'utente non specifica un costruttore predefinito, il compilatore può costruirlo automaticamente e definirlo come richiesto. Alcune configurazioni degli intervalli di classe devono essere eseguite dal costruttore predefinito specificato dal compilatore. Ma a seconda della situazione, il compilatore crea istruzioni per il costruttore predefinito.
Esamineremo la funzionalità del costruttore predefinito in questo articolo."
Esempio n. 1
Definiamo una classe ereditata da qualche altra classe con un costruttore predefinito o creiamo una classe che contiene un elemento di qualche altra classe con un costruttore predefinito. L'oggetto integrato della classe e l'oggetto integrato dei costruttori predefiniti devono essere invocati dal compilatore incorporando il programma.
#includere
Utilizzo dello spazio dei nomi std;
base di classe
pubblico:
;
Classe X
pubblico:
X () cout << "X Constructor" << endl;
dimensione int;
;
Classe L: public x
;
Classe M: public x
pubblico:
M()
cout << "M Constructor" << endl;
;
class n
pubblico:
N()
cout << "N Constructor" << endl;
privato:
X x;
;
int main ()
Base base;
LL;
Mm;
N n;
restituzione 0;
Prima di tutto, integremo la biblioteca . Questo file di intestazione conterrà diverse funzionalità di input e output. Quindi utilizzeremo lo spazio dei nomi standard. Nel prossimo passaggio, creeremo una classe base. Qui il compilatore dichiarerà il costruttore. E lo abbiamo messo in pubblico. Ora creeremo una classe chiamata X. Il costruttore definito dall'utente verrà chiamato pubblicamente. Inizializzamo una "dimensione" variabile.
Inoltre, creeremo un oggetto di classe "L". L'oggetto di questa classe sarà impostato come pubblico. Qui il compilatore definisce il costruttore predefinito della classe "L" e inseriamo la classe per chiamare il costruttore di oggetti. Il compilatore non inizializzerebbe alcun valore della classe x. Ora di nuovo, creiamo una nuova classe chiamata M. Costruiamo l'oggetto della classe M, quindi lo specifichiamo come pubblico.
All'interno di questa classe, creiamo un costruttore definito dall'utente della classe M. Il compilatore integrerà la classe per invocare il costruttore X. La dichiarazione "cout" verrà utilizzata per mostrare il risultato. Creiamo un'altra classe, n. Creiamo pubblicamente un costruttore di questa classe. Questo sarà il costruttore definito dall'utente. Quindi il comando "cout" viene inserito per mostrare il risultato.
Qui il compilatore non ha nuovamente inizializzato alcun contenuto relativo alla classe n. Inoltre, costruiremmo l'oggetto "x" della classe "X". E questo elemento della classe potrebbe essere mantenuto privato. Ora chiamiamo la funzione principale (). Invochiamo gli oggetti di diverse classi.
Esempio n. 2
Il compilatore potrebbe dover inserire il codice in una varietà di situazioni per verificare che una determinata configurazione sia richiesta dalla lingua. Il costruttore predefinito in questa istanza ha due argomenti: un semplice argomento e un argomento predefinito. Attualmente ci sono due metodi per invocare il costruttore predefinito:
In primo luogo, possiamo fornire entrambi i valori dei parametri che verranno forniti al costruttore predefinito, sostituendo il parametro predefinito con il valore fornito durante l'esecuzione del costruttore predefinito.
Il secondo approccio viene utilizzato per indicare che l'argomento predefinito è vuoto. Quando lo fai, "J" calcolerà una somma di 5 e utilizzerà il suo valore predefinito di 0 come valore desiderato.
#includere
Utilizzo dello spazio dei nomi std;
Classe F
pubblico:
int s = 0;
F();
F (int i, int j = 0)
s = i + j;
void print () cout << "Sum of two numbers =" << s << endl;
;
int main ()
F o_1 (23, 50);
F o_2 (5);
O_1.stampa();
O_2.stampa();
restituzione 0;
Qui includeremo la biblioteca . Quindi utilizziamo lo spazio dei nomi standard come std. Ora creiamo la classe chiamata "F". All'interno di questa classe, inizializzamo la variabile definita "S". Qui il costruttore predefinito non contiene argomenti. Il nome del costruttore e della classe sarà lo stesso. Creiamo un altro costruttore predefinito della classe "F". Ma qui, passiamo due variabili (i e j) come parametro del costruttore.
Inoltre, impiegheremo le formule della somma. Qui aggiungiamo il valore di una variabile a un'altra. Quindi chiamiamo il metodo void print () e, insieme a questo, utilizziamo l'istruzione "cout" per stampare la dichiarazione "somma di due valori". Ora iniziamo la codifica all'interno del corpo della funzione principale () dopo aver chiamato questa funzione. Creiamo due diversi oggetti di classe F. Il primo oggetto, "O_1", ha due valori interi come argomenti. La seconda variabile, "O_2", contiene solo 1 valore come parametro.
Vorremmo invocare il costruttore in questi due possibili approcci. Utilizziamo il metodo Print () per entrambi questi oggetti rispettivamente di mostrare l'output. Alla fine, avremmo usato l'istruzione "return 0".
Conclusione
In questo post, abbiamo parlato del funzionamento del costruttore predefinito. Il costruttore mantiene un titolo simile alla classe, è aperto al pubblico e quindi non contiene alcun tipo di ritorno. In un costruttore predefinito, non forniremo parametri. Abbiamo eseguito una varietà di programmi, uno dei quali mostra come utilizzare il costruttore predefinito. Illustriamo che i costruttori avrebbero parametri predefiniti nel secondo esempio. Creiamo due costruttori predefiniti, uno senza argomenti e l'altro con due argomenti, e quindi valutiamo la loro funzionalità.