PDA

View Full Version : [C++] Ereditarieta' e polimorfismo


misterx
26-02-2004, 11:59
più che altro ora mi interessa l'ereditarietà :D

siccome non ho ub libro sotto mano per comprenderne la sintassi, mi spiegate cosa significa:

Counter():value(0){};

penso che definisca un costruttore ma

:value(0){};

cos'è ?


• La scritta : public NomeSuperclasse dopo il nome della classe, indica che questa classe deriva dall'altra.
• Invece di usare come in Java super() per richiamare il costruttore della superclasse, si scrive direttamente NomeSuperclasse()
• Invece i metodi della superclasse si richiamano usando l'operatore di visibilita' :: cioe' NomeSuperclasse::nomeMetodo().



class Counter {

public:

Counter():value(0){};

Counter(int n):value(n){};

int getValue() {
return value;
}

void increment() {
value++;
}

private:

int value;
};

class BigCounter : public Counter{

public:

BigCounter(int n):Counter(n){
}

void increment(){
Counter::increment();
Counter::increment();
}

};

misterx
26-02-2004, 14:29
vabbè, avete ragione: ho postato per pigrizia :p

ma oramai il 3D c'è quindi :sofico:

misterx
26-02-2004, 20:18
dai PGI, inizia una nuova avventura; ora tocca al C++ :D

misterx
27-02-2004, 08:04
trovato

è un modo per inizializzare variabili

ma non so se è standard C++


class_X

{
int a,b,&c;

public:
X(int i, int j) : a(i), b(j), c(a) {}

};