#include<stdio.h> class Rettangolo{ int base, altezza; public: Rettangolo(); Rettangolo(int, int); int area(); }; Rettangolo::Rettangolo(){} Rettangolo::Rettangolo(int b, int a){ base=b; altezza=a; } int Rettangolo::area(){ return(base*altezza); } void main(){ Rettangolo MioRettangolo(6,4); printf("%u",MioRettangolo.area()); getc(stdin); }In verde, il costruttore predefinito, in blu il nuovo costruttore, con parametri, e il codice che istanzia la classe usando questo costruttore.
Posso anche stabilire che se istanziato senza parametri il rettangolo abbia valori dei membri dato di default di 5 e 3, mentre se istanziato con parametri assuma i valori specificati in questi parametri:
#include<stdio.h> class Rettangolo{ int base, altezza; public: Rettangolo(); Rettangolo(int, int); int area(); }; Rettangolo::Rettangolo(){ base=3; altezza=5; } Rettangolo::Rettangolo(int b, int a){ base=b; altezza=a; } int Rettangolo::area(){ return(base*altezza); } void main(){ Rettangolo BaseRettangolo; Rettangolo MioRettangolo(6,4); printf("%u\n",BaseRettangolo.area()); printf("%u",MioRettangolo.area()); getc(stdin); }Ecco: la classe viene istanziata senza parametri, secondo il costruttore predefinito, e allora assume il valore predefinito di 5 e 3 per base e altezza, con area corrispondente; poi viene istanziata con parametri, attribuendo ai membri dato i valori di 6 e 4 per base e altezza, con area corrispondente.
Nessun commento:
Posta un commento