In
C++, there are three access specifiers for classes : public, protected, and private. These are important for
encapsulation. A public
member is one that can be accessed by any code. A protected
member can only be accessed by
methods in the
class and its
derived class. A private
member can only be accessed by
methods in the class itself. A friend to the
class may access a member regardless of access specifier. (friends violate
encapsulation and are a
Bad Thing)