What is public, protected, private?
http://www.codersource.net/c/c-tutorials/c-tutorial-class.aspx
among millions of other links
In a C++ class variables and methods (routines) can be public, protected or private.
Public means they can be accessed by any other code, either inside or outside of the class.
Protected means they can only be accessed by itself and children of the class.
Private means they can only be accessed by the class, not even children of the class can access them.
Children, in this case, means instances of classes derived from the base class, in which the public, protected, and private keywords are used.
If you don't intend to derive from a class (or support other people doing so), there is no reason to use the protected keyword.