Parte protegida
Protegiendo la herencia, los miembros públicos y protegidos de la clase base se convierten en miembros protegidos de la clase derivada y los miembros privados de la clase base se vuelven inaccesibles. La herencia protegida es apropiada cuando las facilidades o aptitudes de la clase base son útiles en la implementaron de la clase derivada, pero no con parte de la interfaz que el usuario de la clase ve. La herencia protegida es todavía menos frecuente que la herencia privada.
Tipos de herencia y accesos que permiten.
Tipo de Herencia | Acceso a miembro clase base | Acceso a miembro a clase derivada |
public | public protect private | public protect inaccesible |
protected | public protect private | protect protect inaccesible |
private | public protect private | public public inaccesible |
La tabla anterior resume los efectos de los tres tipos de herencia en la clase accesibilidad de los miembros de la clase derivada. La entrada inaccesible indica que la clase derivada no tiene acceso al miembro de la clase base.
Ejemplo:
Declarar una clase base (Base) y tres clases derivadas de ella, D1, D2, D3.
class Base {
public:
int i1;
protected
int i2;
private:
int i3;
};
class D1: private Base [
void f( );
};
class D2 : protected Base {
void g ( );
};
class D3 : public Base {
void h ( );
};
No hay comentarios:
Publicar un comentario