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.5. Putting It All Together

RTTI Implementation

The implementation of RTTI is compiler dependent, but let's look at a typical configuration. To illustrate, consider the following Base and Derived class definitions.

class Base { 
private:
   // Base members
public:
   Base() { }
   virtual void f1() { cout << "Base::f1()" << endl; }
   virtual void f2() { cout << "Base::f2()" << endl; }
   virtual void f3() { cout << "Base::f3()" << endl; }
};
class Derived : public Base {
private:
   // Derived members
public:
   Derived() { }
   void f2() { cout << "Derived::f2()" << endl; }
   virtual void f4() { cout << "Derived::f4()" << endl; }
};

Base defines three virtual functions. Derived overrides f2() and defines virtual function f4(). Suppose we declare the following objects. ...

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