ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Clases En POO


Enviado por   •  15 de Abril de 2013  •  1.045 Palabras (5 Páginas)  •  367 Visitas

Página 1 de 5

Declaración de clases

Para declarar una clase, todo lo que se necesita es escribir una definición de estructura y sustituir la palabra reservada struct por class. Por ejemplo, una clase empleado con campos como el nombre, el departamento, la posición, el una función que nos imprima la información de este quedaría así:

class Empleado {

char* m_nombre;

char* m_departamento;

char* m_posicion;

long m_salario;

void Imprimir( Empleado infoEmpleado);

}

Cuando usted declara una clase en C++, no se reserva memoria para la clase hasta que usted crea un objeto de la clase. Crear un objeto de una clase se llama instanciar un objeto. Un objeto creado de una clase de denomina instancia de una clase. Por ejemplo, yo puedo tener una instancia de empleado con el valor en m_nombre=Jose, m_departamento=Sistemas, m_posicion=programador y m_salario=3000000 por ejemplo.

Especificadores de acceso

C++ utiliza especificadores de acceso para permitir controlar a una clase el acceso a las variables de datos de esa clase. Los especificadores de acceso permiten acceder a algunos miembros de la clase y restringir el acceso a otros.

Hay tres especificadores de acceso en C++: public, private y protected. Cuando usted declara público ( public) un miembro de una clase, usted permite el acceso a tal miembro desde dentro y fuera de la clase. Los miembros de datos que son declarados protegidos ( protected ) son únicamente accesibles por funciones miembro de la clase, pero no se pueden acceder a ellos desde otras clases. Cuando un miembro de una clase es declarado privado ( private ) es ináccesible no sólo desde otras clases y otras partes del programa, sino también desde sus clases derivadas. Las clases derivadas se explicara posteriormente.

Miremos el siguiente programa de ejemplo. Se compone de tres partes: la primera una declaración de una clase llamada Empleado:

class Empleado {

private:

char* m_nombre;

char* m_departamento;

char* m_posicion;

long m_salario;

public:

void ImprimirInfo();

void SetNombre( char* nombre ) { m_nombre = nombre }

void SetDepartamento( char * departamento) { m_departamento = departamento }

void SetPosicion ( char* posicion ) { m_posicion = posicion }

void SetSalario ( long salario ) { m_salario = salario }

const char* GetNombre( ){ return m_nombre }

const char* GetDepartamento( ){ return m_departamento }

const char* GetPosicion( ){ return m_posicion }

const char* GetSalario( ){ return m_salario }

};

Las funciones SetNombre, SetDepartamento, setPosicion, setSalario, GetNombre, GetDepartamento, GetPosicion y GetSalario se denominan funciones intercaladas, que son funciones que se declaran en una sola línea.

Las variables de miembro son declaradas privadas para que funciones de miembro de otras funciones no tengan acceso a ellas sino a travez de la correspondiente funcion Get o Set. Las funciones de miembro si son declaradas públicas de tal modo que se pueda acceder a ellas desde otras funciones.

La definición de la función PrintInfo puede quedar así:

void Empleado::ImprimirInfo( )

{

cout << "Nombre: " << m_nombre << '\n';

cout <<

...

Descargar como (para miembros actualizados) txt (6 Kb)
Leer 4 páginas más »
Disponible sólo en Clubensayos.com