Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Por <strong>de</strong>fecto u omisión todo lo <strong>de</strong>clarado <strong>de</strong>ntro <strong>de</strong> una clase es privado y sólo se pue<strong>de</strong> acce<strong>de</strong>r a ello<br />
con las funciones miembro <strong>de</strong>claradas en el interior <strong>de</strong> la clase o con funciones amigas.<br />
Los miembros que se <strong>de</strong>claran en la sección protegida <strong>de</strong> una clase sólo pue<strong>de</strong>n ser accedidos por<br />
funciones miembro <strong>de</strong>claradas <strong>de</strong>ntro <strong>de</strong> la clase, por funciones amigas o por funciones miembro <strong>de</strong><br />
clases <strong>de</strong>rivadas.<br />
A los miembros que se <strong>de</strong>claran en la región pública <strong>de</strong> una clase se pue<strong>de</strong> acce<strong>de</strong>r a través <strong>de</strong><br />
cualquier objeto <strong>de</strong> la clase <strong>de</strong> igual modo que se acce<strong>de</strong> a los miembros <strong>de</strong> una estructura en C.<br />
class alfa<br />
{<br />
int x; //miembros dato privados<br />
float y;<br />
char z;<br />
public:double k; //miembro dato público<br />
void fijar(int,float,char); //funciones miembro públicas<br />
void visualizar();<br />
};<br />
void main()<br />
{<br />
alba obj; //<strong>de</strong>claración <strong>de</strong> un objeto<br />
obj.fijar(3,2.1,'a'); //invocar a una función miembro<br />
obj.visualizar(); //invocar a una función miembro<br />
obj.x=4; //error: no se pue<strong>de</strong> acce<strong>de</strong>r a datos privados<br />
obj.k=3.2; //válido: k está en la región pública<br />
}<br />
La <strong>de</strong>finición <strong>de</strong> funciones miembro es muy similar a la <strong>de</strong>finición ordinaria <strong>de</strong> función. Tienen una<br />
cabecera y un cuerpo y pue<strong>de</strong>n tener tipos y argumentos. Sin embargo, tienen dos características<br />
especiales:<br />
a)Cuando se <strong>de</strong>fine una función miembro se utiliza el operador <strong>de</strong> resolución <strong>de</strong> ámbito (::) para<br />
i<strong>de</strong>ntificar la clase a la que pertenece la función.<br />
b) Las funciones miembro (métodos) <strong>de</strong> las clases pue<strong>de</strong>n acce<strong>de</strong>r a las componentes privadas <strong>de</strong> la<br />
clase.<br />
Opción 1<br />
class ejemplo<br />
{<br />
int x,y;<br />
public:<br />
void f()<br />
{<br />
cout