Guida programmazione orientata agli oggetti » Torna alla lezione

Esempio di ereditarietà multipla [C++]

Nell'esempio proposto viene definita una classe Rettangolo che deriva dalle superclassi Poligono e Output. Da queste, la classe Rettangolo erediterà i metodi e le proprietà definite con access specifier public o protected.

Per semplificare la struttura del codice non vengono utilizzati, in questo esempio, i file header.

class Poligono
{
  protected:
    int larghezza, altezza;
  public:
    void setValori (int lar, int alt)
    {
       larghezza = lar;
       altezza = alt;
    }
};
class Output
{
  public:
      void output (int i)
      {
         cout << i
      }
};
class Rettangolo: public Poligono, public Output
{
  public:
    int area ()
    {
        return (larghezza * altezza);
    }
    void visualizzaArea()
    {
        output(area());
    }
};