protected access specifier | Restricts member access to the class and derived classes |
access-specifier := protected |
The protected keyword can be used within a class definition (followed by a colon ) to mark subsequent member declarations as protected or before a base-class name in the class header to mark the inheritance as protected.
Protected members can be used by the class itself, derived classes, or by friends . When accessing a protected member, the access must be through this or an instance of the same class or a derived class. It cannot be through a base class.
Protected inheritance means all public members of the base class become protected in the derived class.
See private for an example.
class , private , public , struct , Chapter 6