adding a multiple level inheritance example

This commit is contained in:
Jidong Xiao
2023-12-04 02:05:42 -05:00
parent 5ff7b263d1
commit 7e65875444
2 changed files with 13 additions and 1 deletions

View File

@@ -180,12 +180,14 @@ Create a class hierarchy of geometric objects, such as: triangle, isosceles tria
rhombus, kite, trapezoid, circle, ellipse, etc. How should this hierarchy be arranged? What member variables and
member functions should be in each class?
## 26.10 Note: Multiple Inheritance
## 26.10 Multiple Inheritance
- When sketching a class hierarchy for geometric objects, you may have wanted to specify relationships that were more complex... in particular some objects may wish to inherit from more than one base class.
- This is called multiple inheritance and can make many implementation details significantly more hairy. Different programming languages offer different variations of multiple inheritance.
- See [example 1](multiple_inheritance1.cpp) and [example 2](multiple_inheritance2.cpp).
- And see [example 3](multiple_level_inheritance.cpp) for a multiple level inheritance example.
## 26.11 Introduction to Polymorphism
- Lets consider a small class hierarchy version of polygonal objects: