martedì 11 novembre 2014

Funzione Virtuale

Funzioni virtuali
Le funzioni virtuali sono funzioni associate al tipo attuale di oggetto disponibile permettendo la chiamata in tempo di esecuzione e costituiscono il meccanismo utilizzato dal C++ per ottenere il polimorfismo. Per dichiarare una funzione come virtuale si mette la parola chiave virtual prima del nome nella dichiarazione della classe base (o anche di ogni figlia, ma non è necessario):
virtual  type Nome_Funzione ( elenco parametri );

Un esempio di codice :

#include <iostream>
using namespace std;
class Padre
{
public:
      virtual void Stampa();
      {
        cout<<"Io sono il Padre"<<endl;

      };


};
class Figlio:public Padre
  {

   void Stampa();
   {
         cout<<"Io sono il Figlio"<<endl;

        };
         };
int main()
{
      Padre*p; // dichiarazione di un puntatore di tipo padre
         p=newPadre; //associa il puntatore ad un area di memoria di tipo padre
          p->Stampa();
           (*p)Stampa();
       //sara utilizzato quello della classe padre
     p=new Figlio; //

        p->Stampa();
           return 0;
             }
// end of main

Nessun commento:

Posta un commento