C++ Inheritance & Polymorphism: Multiple Inheritance & the Diamond Hierarchy
C++
| Expert
- 11 videos | 1h 21m 49s
- Includes Assessment
- Earns a Badge
C++ allows multiple inheritance, which means that one class can have more than one base. C++ also has some powerful mechanisms for dealing with edge cases such as the diamond hierarchy. You will start this course by learning the precise syntax which is required to implement multiple inheritance in C++, specifically, how it's important to have both base class access specifiers marked independently. You will then move on to the topic of a diamond inheritance hierarchy, in which the grandchild-level derived class has two parents, both of which inherit from the common, grandparent level base class. Finally, you will see how dynamic casts work in the context of an inheritance hierarchy, how these are a lot safer than static casts, and how they return a null value on failure when used with pointers but they throw an exception on failure when used with references.
WHAT YOU WILL LEARN
-
Discover the key concepts covered in this courseOutline the concepts of multiple inheritance and the diamond hierarchyPerform multiple inheritance and explore naming collisionsUse the ‘using’ keyword and implement virtual methods in multiple inheritanceDemonstrate the diamond hierarchy and virtual public inheritancePerform c-style casts and recognize risks associated with them
-
Use c++-style static casts and contrast them with c-style castsCast an object of one class to another classPerform dynamic castsRecognize errors and issues which can result with dynamic castsSummarize the key concepts covered in this course
IN THIS COURSE
-
1m 57s
-
6m 27s
-
8m 3s
-
8m 38s
-
11m 28s
-
9m 57s
-
6m 15s
-
7m 54s
-
7m 26s
-
10m 46s
-
2m 56s
EARN A DIGITAL BADGE WHEN YOU COMPLETE THIS COURSE
Skillsoft is providing you the opportunity to earn a digital badge upon successful completion on some of our courses, which can be shared on any social network or business platform.
Digital badges are yours to keep, forever.