Udostępnij za pośrednictwem


Dziedziczenie wielokrotne

Nowsze wersje języka C++ wprowadziły model "wielokrotnego dziedziczenia" dla dziedziczenia.Na wykresie wielokrotnego dziedziczenia, klasy pochodnych mogą mieć kilka bezpośrednich klas podstawowych.Rozważmy graf pokazany na poniższym rysunku.

Prosty wykres wielokrotnego dziedziczenia

Wiele podstawowych-dziedziczenia.

Diagram na rysunku przedstawia klasy, CollectibleString.Przypomina to Collectible (coś, co może być zawarte w zbiorze), i jest podobny do String.Wielokrotne dziedziczenie jest dobrym rozwiązaniem do tego rodzaju problemu (gdzie klasa pochodna ma atrybuty więcej niż jednej klasy bazowej) ponieważ łatwo jest utworzyć CollectibleCustomer, CollectibleWindow, i tak dalej.

Jeśli właściwości jednej klasy nie są wymagane dla określonej aplikacji, każda klasa może być używana samodzielnie lub w połączeniu z innymi klasami.W związku z tym biorąc pod uwagę hierarchię pokazaną na powyższym rysunku, można utworzyć, ciągi niekolekcjonowalne i elementy kolekcjonowalne, które nie są ciągami.Taka elastyczność nie jest możliwa przy użyciu pojedynczego dziedziczenia.

Zobacz też

Informacje

Wiele klas podstawowych

Przegląd klas pochodnych

Dziedziczenie wielokrotne