October 1997
Intermediate to advanced
800 pages
20h 48m
English
Public inheritance makes derived types a subtype of their base. Standard conversions apply from derived objects to base objects with pointers and references (see Table 6.5, “Standard conversions,” on page 277). This means derived object references or pointers may appear in expressions whose types are base object references or pointers.
The compiler converts derived class pointers and references to base class pointers and references implicitly (without casts). These standard conversions occur with object initialization, assignment, and function argument resolution. Here are several examples.
class Derived : public Base { . . . }; Base b; // Base object Derived d; // Derived publicly from Base Base *bp = &d; // legal, pointer standard ...