C++
Home

Herança Múltipla

 

#include <iostream>

class Base1 {
  private:
    int i;

  public:
    Base1( int a );
};

Base1::Base1( int a=0 )
{
  this->i = a;
}

class Base2 {
  private:
    char i;

  public:
    Base2( char a );
};

Base2::Base2( char a )
{
  this->i = a;

// forma de se fazer a herança multipla
class Derivada : public Base1, public Base2 {
   public:
     Derivada(int, char);
};

// iniciando construtores
Derivada::Derivada(int a, char b)
: Base1( a ), Base2( b )
{

}

int main()
{
  Derivada a( 10, 'a' );

  return 0;
}

 

Com herança multipla, todos os metodos são derivados, segue o mesmo padrão da herança simples.
A única diferença é que neste caso, vc deriva de mais de uma classe.