Costruttore parametrizzato in C++: lavoro ed esempi

Pubblicato: 2021-05-27

Sommario

Cos'è il costruttore?

Un costruttore è una funzione membro di una classe utilizzata per inizializzare gli oggetti in una classe. In C++ , quando viene creato un oggetto che è l'istanza della classe, il costruttore viene chiamato automaticamente. Pertanto, un costruttore è una funzione membro speciale della classe.

Che cos'è un costruttore parametrizzato?

Gli argomenti possono essere passati ai costruttori. Quando un oggetto viene creato, questi argomenti aiutano a inizializzare un oggetto. Per creare un costruttore parametrizzato in C++ , possiamo aggiungere parametri a una funzione come può essere aggiunto a qualsiasi altra funzione. Quando il corpo del costruttore è definito, i parametri vengono utilizzati per inizializzare l'oggetto.

Sintassi del costruttore parametrizzato in C++

nome della classe_della_classe{

Identificatore di accesso (Pubblico/protetto/privato):

Variabili membro

Funzioni dei membri

pubblico:

nome_della_classe(variabili){ //Codice per il costruttore

}

// altre funzioni e variabili

}

La sintassi includeva name_of_class, seguito da uno specificatore di accesso che contiene funzioni membro e variabili membro. Tutti questi sono inclusi nel codice del costruttore, il che significa che può essere chiamato nel corpo del costruttore.

Leggi anche: Progetti Open Source per C++

Esempio di costruttore parametrizzato in C++

#includi <iostream>

usando lo spazio dei nomi std;

classe Esempio

{

privato:

int a, b;

pubblico:

// Costruttore parametrizzato

Esempio(int a1, int b1)

{

a = a1;

b = b1;

}

int getA()

{

restituire un;

}

int getB()

{

ritorno b;

}

};

int principale()

{

// Chiamando il costruttore

Esempio e1(5, 10);

cout << “e1.a = ” << e1.getA() << “, e1.b = ” << e1.getB();

restituire 0;

}

Produzione

Spiegazione: Le variabili private aeb sono dichiarate nella classe Esempio. Un costruttore parametrizzato viene dichiarato utilizzando la funzione Esempio. Include due metodi getA() e getB(). Nella classe principale viene chiamato il costruttore e vengono assegnati i valori di accesso del costruttore.

Come funziona il costruttore con parametri in C++?

Viene avviato un oggetto, che contiene valori o dettagli e parametri che l'oggetto elaborerà o conterrà ogni volta che viene definito un costruttore parametrizzato in C++ . Quindi diventa possibile che gli argomenti vengano passati a quell'oggetto. La procedura è molto simile al passaggio di un valore a una funzione. Ha anche una somiglianza con il passaggio di valori parametrizzati agli oggetti.

Gli oggetti definiti nel corpo del costruttore vengono inizializzati utilizzando i parametri. I valori devono essere passati come argomenti alla funzione di costruzione ogni volta che viene dichiarato un costruttore con parametri. Questi costruttori possono essere chiamati sia in modo esplicito che implicito. Il modo convenzionale di dichiarazione degli oggetti non funziona.

Nota: tipi di chiamata-

  1. Chiamata esplicita- Esempio e1= Esempio(0,10)
  2. Chiamata implicita- Esempio e1(0,10)

Checkout: Idee di progetto in C++ per principianti

Qual è l'uso del costruttore parametrizzato in C++?

Gli usi dei costruttori parametrizzati sono i seguenti:

  • Sovraccarico del costruttore
  • Utilizzato per assegnare valori diversi ai vari elementi di dati di oggetti diversi quando vengono inizializzati/creati

Un altro esempio:

1. Programma per calcolare l'area di un rettangolo

#includi <iostream>

usando lo spazio dei nomi std;

// dichiarazione di una classe

rettangolo di classe {

privato:

doppia lunghezza;

doppia larghezza;

pubblico:

// creazione di un costruttore parametrizzato

rettangolo(doppia lente, doppia brt) {

// inizializza le variabili private

lunghezza = len;

larghezza = brt;

}

double calcolaArea() {

lunghezza del ritorno * larghezza;

}

};

int principale() {

// creazione di oggetti e inizializzazione dei membri dati

rettangolo rect1(10, 8.6);

rettangolo rect2(8.5, 6);

cout << “Area del rettangolo 1: ” << rect1.calculateArea() << endl;

cout << “Area del rettangolo 2: ” << rect2.calculateArea() << endl;

restituire 0;

}

Produzione

Spiegazione: In questo esempio, abbiamo creato un costruttore con parametri rectangle() con due parametri: double len e double bdt. Questi parametri contengono valori utilizzati per inizializzare la lunghezza e l'ampiezza delle variabili membro. Quando creiamo un oggetto della classe Rectangle, passiamo i valori delle variabili membro come argomenti. Possiamo calcolare l'area con la funzione calcolaArea() quando le variabili membro vengono inizializzate.

1. Visualizzazione dei voti degli studenti

#includi <iostream>

usando lo spazio dei nomi std;

classe Studente {

pubblico:

int std_id;//membro dati

string std_name;//anche variabile di istanza

float std_marks;

Student(int i, stringa a, float b)

{

id_std = io;

nome_std = a;

segni_std = b;

}

visualizzazione vuota ()

{

cout<<std_id<<” “<<std_name:<<” “<<std_marks <<endl;

}

};

int principale (vuoto) {

Studente s1 =Studente(101, “Soniya”, 89); //creazione di un oggetto di studente

Studente s2=Studente(102, “Nakul”, 59);

s1.display();

s2.display(); restituire 0;

}

Produzione

Spiegazione: id, name e mark sono membri dati (anche variabili di istanza). Uno studente è un costruttore parametrizzato e i suoi oggetti vengono creati nella classe principale.

Impara i corsi di sviluppo software online dalle migliori università del mondo. Guadagna programmi Executive PG, programmi di certificazione avanzati o programmi di master per accelerare la tua carriera.

Conclusione

I costruttori sono solo tipi speciali di metodi in cui possiamo passare valori. Se non passiamo valori al costruttore, l'oggetto finale ha un valore predefinito. [1] [MOU2] Gli oggetti contengono i metodi ei valori delle variabili membro che fanno parte della classe principale. Questi valori vengono infine passati tramite i costruttori. Un costruttore parametrizzato in C++ ha il vantaggio di assegnare valori diversi a oggetti diversi e può verificarsi un sovraccarico.

Ora che conosci i costruttori parametrizzati in C++, se vuoi approfondire e salire nella tua carriera di programmatore, allora esplora i corsi di upGrad, la più grande azienda indiana di istruzione superiore online. Devi controllare il nostro programma di sviluppo software full-stack .

Che cos'è un costruttore?

Il costruttore è un metodo speciale in una classe che ha lo stesso nome della classe. È speciale perché questo metodo viene chiamato automaticamente quando viene creata una classe (istanziata). Se un costruttore non ha argomenti, la classe viene istanziata con valori vuoti. Il costruttore esegue attività di inizializzazione e inizializza le variabili di istanza della classe. Lo scopo principale del costruttore è stabilire i valori delle proprietà dell'oggetto. Viene anche utilizzato per eseguire qualsiasi operazione che deve essere eseguita una sola volta. Il costruttore viene solitamente dichiarato come statico pubblico nella classe e l'oggetto viene creato utilizzando questo costruttore.

Quanti costruttori possono esserci in una classe?

Se stiamo parlando di C++, il numero di costruttori è illimitato. Tuttavia, potrebbero esserci altri limiti a causa di altri motivi come la limitazione della memoria della macchina, la complessità della classe, ecc. Pertanto, il numero di costruttori è illimitato, ma non il numero di parametri del costruttore. Ci possono essere tutti i costruttori che vuoi in una classe. Ma il costruttore predefinito è un must. Qualsiasi classe che non ha un costruttore predefinito è una classe astratta. La classe astratta non può essere istanziata.

Che cos'è la programmazione orientata agli oggetti?

La programmazione orientata agli oggetti è un paradigma di programmazione che tratta gli "oggetti" come i mattoni fondamentali di un programma o di un sistema informatico. Gli oggetti sono entità software che possono contenere dati, sotto forma di campi, spesso noti come attributi; e codice, sotto forma di procedure, spesso note come metodi. La programmazione orientata agli oggetti si concentra sui dati e sulle regole che li circondano, piuttosto che concentrarsi sulla logica procedurale o sul flusso di controllo, come era comune nei primi linguaggi di programmazione. OOP tratta i dati nel loro insieme piuttosto che come un insieme di singoli elementi.