Compartilhar via


Várias heranças

Versões posteriores do C++ introduziram um modelo de “herança múltipla” para a herança. Em um gráfico de herança múltipla, as classes derivadas podem ter um número de classes base diretas. Considere o gráfico na figura a seguir.

Gráfico simples de herança múltipla

Herança múltipla básica

O diagrama na figura mostra uma classe, CollectibleString. É como Collectible (algo que pode ser incluído em uma coleção) e como String. A herança múltipla é uma boa solução para esse tipo de problema (onde uma classe derivada tem atributos de mais de uma classe base) porque é fácil formar CollectibleCustomer, CollectibleWindow, e assim por diante.

Se as propriedades de qualquer classe não forem necessárias para um aplicativo específico, cada classe pode ser usada isoladamente ou em combinação com outras classes. Portanto, dada a hierarquia descrita na figura anterior, você pode formar as cadeias de caracteres colecionáveis e não colecionáveis que não sejam cadeias de caracteres. Essa flexibilidade não é possível usando a herança única.

Consulte também

Referência

Várias classes base

Visão geral de classes derivadas

Herança múltipla