Chapter 12. Run-Time Type Identification

The previous chapter demonstrates the power of polymorphic programming with public inheritance. These concepts directly apply to class libraries, where base classes provide behaviors that derived classes may specialize or reuse. Class library hierarchies are extendable and easy to modify because type checking is an integral part of the virtual function mechanism. Dynamic binding plays a key role in polymorphic programming because it frees the programmer from the burden of type checking objects at run time.

Polymorphism with dynamic binding is not perfect, however. Occasionally, we need to check an object's type at run time to control its behavior properly. The techniques to identify run-time object types ...

Get Navigating C++ and Object-Oriented Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.