Skip to Content
Navigating C++ and Object-Oriented Design
book

Navigating C++ and Object-Oriented Design

by Paul Anderson, Gail Anderson
October 1997
Intermediate to advanced
800 pages
20h 48m
English
Pearson
Content preview from Navigating C++ and Object-Oriented Design

11.11. Abstract Base Classes

A model that generalizes attributes and behaviors into a single base class that you never instantiate is a good design approach with many problem domains. An example might be a Rental_Property class from which we derive House, Apartment_Building, and Office_Building. We never create a Rental_Property object; instead, we instantiate derived objects that specify a property type. Another example is a Shape class from which we derive Circle, RTriangle (right triangle), and Square. An unspecialized Shape object can never exist because we must specify a Shape type before we use it.

Let's explore this concept further with a Shape hierarchy that manipulates two-dimensional shapes. We'd like to determine the area and perimeter ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Exploring C++20: The Programmer's Introduction to C++

Exploring C++20: The Programmer's Introduction to C++

Ray Lischner

Publisher Resources

ISBN: 0135327482Purchase book