Miembros public y private
Los miembros de una clase pueden ser datos o funciones, que pueden definirse como públicos (accedidos desde cualquier parte del programa), protegidos o privados (sólo pueden ser accedidos por las funciones propias de la clase donde se definen) mediante las palabras public, protected y private.
Uso de la palabra protected
Se puede conceder a la clase derivada acceso a los elementos private de una clase base haciéndo a estos protected.
Ejemplo:
class X {
protected:
int i;
int j;
public:
void obt_ij(void)
void poner_ij(void);
class y : public X {
int k;
public:
int obj_k(void);
void hacer_k(void);
};
Da a Y acceso a i y j aunque permanezcan inaccesibles para el resto del programa.
Resumiendo: Un miembro de una clase puede ser private, protected o public.
- Si es private su nombre sólo puede ser usado por funciones miembro y friend de la clase en la cual es declarado.
- Si es protected, su nombre sólo puede ser usado por funciones miembro y friend de la clase en la cual es declarado y por funciones miembro y friend de las clases derivadas de esta clase.
- Si es public, su nombre puede ser usado por cualquier función.