Código
class ClaseA { public: int a; private: int b; protected: int c; }; class HPublica : public ClaseA { int getNum(){ return a*c;}; }; class HPrivada : private ClaseA { int getNum(){ return a*c;}; }; class HProtegida : protected ClaseA { int getNum(){ return a*c;}; }; #pragma argsused int main(int argc, char* argv[]) { HPublica pub; pub.a; HPrivada priv; HProtegida proc; ClaseA claseA1 = pub; ClaseA claseA2 = priv;//Error!!! ClaseA claseA3 = proc;//Error!!! return 0; }
Creo que sigo sin entender los tipos de herencia :S
Quisiera saber xq me da error al compilar(cannot convert HPrivada to ClaseA y lo mismo con HProtegida) las 2 sentencias que pongo como error!!, es acaso porque al ser herencias del tipo privado o protegida sus instancias no conservan nada de la clase base?
salu2 y gracias