Public membres d'une classe sont accessibles pour tous et chacun.
Protégé les membres de la classe ne sont pas accessibles à l'extérieur d'Un code, mais est accessible à partir du code d'une classe dérivée de A.
Privé des membres de la classe ne sont pas accessibles à l'extérieur d'Un code, ou à partir du code d'une classe dérivée de A.
Donc, en fin de compte, le choix entre protégée ou privée est de répondre aux questions suivantes: Combien de confiance sont-vous prêt à mettre dans le programmeur de la classe dérivée?
Par défaut, supposons que la classe dérivée n'est pas digne de confiance, et faire de votre privée des membres. Si vous avez une très bonne raison de donner libre accès de la mère de la classe de fonctionnement interne de ses classes dérivées, alors vous pouvez faire de leur protection.