|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
|
[C++] cosa non ho capito dell'ereditarieta' ???
Eccomi di nuovo con le mie domande niubbe.
Con il codice stringo perche' e' un po' tardi Codice:
class Base
{
pubblic:
Base();
~Base();
virtual void Method() { printf("BASE")};
}
Codice:
class BaseSeconda: public Base
{
pubblic:
BaseSeconda(): Base() {};
~BaseSeconda();
void Method() { printf("BASE SECONDA")};
}
Codice:
class Dervied: public BaseSeconda
{
pubblic:
Dervied(): BaseSeconda() {};
~Dervied();
}
Codice:
int main(int argc, char* argv)
{
Base* class = new Dervied();
cout << class->Method();
}
Quote:
Non so se lo avevate capito ma io mi aspettavo un BASE SECONDA P.S.: il codice l'ho scritto in fretta e furia, il concetto e' che volevo il metodo della classe di mezzo e non della "capostipite" |
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
|
a parte che non compilerà mai
Codice:
#include <iostream>
class Base
{
public:
virtual void Method() { printf("BASE");}
};
class BaseSeconda: public Base
{
public:
void Method() { printf("BASE SECONDA");}
};
class Dervied: public BaseSeconda
{
};
int main(int argc, char* argv)
{
Base* classe = new Dervied();
classe->Method();
}
ciaaaao! |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Nov 2003
Messaggi: 980
|
Per quanto mi ricordo anche le funzioni della classe derivata devono usare la keyword virtual perchè funzioni il tutto...
|
|
|
|
|
|
#4 | |||
|
Senior Member
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
|
Quote:
(anche perche' cout<<printf("BASE")); fa scompiscare dalle risate ) Quote:
![]() ovvero il mio codice dell'altra notte ora va perfettamente come doveva.... ... prima pero' ho cancellato tutti i file oggetto e rifatto una compilazione ex-novo. Forse era solo un problema di linking In ogni caso ecco la lezione del saggio: Quote:
|
|||
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
|
public si scrive con una b
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 02:57.



















