Zeruel Mortale pio

Registrato: 20/02/08 14:33 Messaggi: 18
|
Inviato: 09 Nov 2008 17:56 Oggetto: [C++] Problema con ereditarietà/late binding |
|
|
Ciao ragazzi, mi si è presentata questa situazione:
Codice: |
class Father
{
std::string nome;
public:
virtual void Print();
};
class Son : public Father
{
int numero;
public:
virtual void Print();
} |
I metodi print stampano i valori delle componenti. Successivamente faccio:
Codice: |
vector<Father *> v;
v.push_back(new Son("ciao",2));
v[0].print();
|
E mi viene richiamata sempre la versione di Faher. Che mi risulti essendo virtual dovrebbe essere eseguita la versione relativa al tipo effettivo a run-time. Qualcuno può illuminarmi??
Grazie, Zeru |
|