Come da titolo mi è venuto un dubbio sul polimorfismo.
Il polimorfismo è la possibilità di un metodo di comportarsi in maniera diversa a seconda dell'oggetto che lo invoca; fino a qui ci siamo.
Adesso vi mostro questi codici generici:
codice:
class A
{
public:
void stampa() const;
private:
//codice generico
};
class B
{
public:
void stampa();
private:
//codice generico
};
Ed il mio main è:
codice:
int main()
{
A aa;
B bb;
bb.stampa();
aa.stampa();
return 0;
}
Posso parlare di polimorfismo (anche se il const lo ha uno solo o entrambi o nessuno)?
Per quanto riguarda questo codice invece:
codice:
class A
{
public:
virtual void stampa() const;
private:
//codice generico
};
class B
{
public:
virtual void stampa() const;
private:
//codice generico
};
Ed il mio main è:
codice:
int main()
{
A* aa;
aa=new A;
aa->stampa();
delete aa;
aa=new B;
aa->stampa();
delete aa;
return 0;
}
In questo caso ho polimorfismo.
Ringrazio in anticipo.
--