Código:
#include <cstdio>
class A
{
public:
A(){}
~A(){}
//protected:
void hola()
{
printf("Hola\r\n");
}
};
class B
{
public:
B(){}
~B(){}
A elA;
void decirHola()
{
elA.hola();
}
};
void main()
{
B z;
z.elA.hola();
z.decirHola();
}
Como veras si descomentas el protected el compilador mostrara dos errores, en ambos casos es por no poder acceder al metodo hola de la variable elA.