#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