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

12.1. Why Is RTTI Necessary?

Suppose a class library contains an Investment class with a virtual purchase() function.

class Investment {                         // Library class 
private:
   . . .
public:
   virtual float purchase();
   . . .
};

Our application requires Stock and Land objects, so we create the following classes as subtypes of Investment to reuse code from the class library.

class Stock : public Investment {          // our class 
public:
   float purchase();                    // override virtual purchase()
   virtual float dividend() const;      // new virtual function
};

class Land : public Investment {        // our class
public:
   float purchase();                    // override virtual purchase()
};

The Stock class and the Land class override purchase() from the Investment base class. Consequently, calls to purchase() ...

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