En programación orientada a objetos, las clases se utilizan como plantilla para construir objetos de ese tipo.
Poo : encapsula datos y funciones en estructuras llamadas clases, para modelar el mundo real.
La clase (TCoordenada) se puede instanciar como:
Poo : encapsula datos y funciones en estructuras llamadas clases, para modelar el mundo real.
La clase (TCoordenada) se puede instanciar como:
- objeto : TCoordenada objetoP1;
- array : TCoordenada arrayP2[10];
- puntero : TCoordenada *ptrP3 = &objetoP1;
- referencia : TCoordenada &refP4 = objetoP1;
Ejemplo de definición de una clase, funciones inline para el input, funciones de parametro cero para el output y funciones sobrecarga para la impresión de resultados :
* defclases.cpp
* Definición y usos de clases
* by Oscar Romero
* compilado : g++ defclasses.cpp -o defclasses
*/
#include <iostream> //Añade encabezado de flujo entrada salida
using namespace std; //permiso para acceso al espacio de nombres std
class TCoordenada //Definicion de la clase
{
public: //Permite acceder a los datos desde la función main
void setX(int xx) {x = xx;} //Funciones para el input en el main
void setY(int yy) {y = yy;} //Son funciones inline
void setZ(int zz) {z = zz;} //inline = codigo dentro declaracion
int getX(void) {return x;} //Funciones para el output en el main
int getY(void) {return y;} //Funciones parámetro cero, sin argumentos
int getZ(void) {return z;}
void imprimir(void) //Funcion de sobrecarga para el output
{
cout << "(" << x << ", " << y << ", " << z << ")" << endl;
}
private: //Permite reservar datos para uso interno de la clase
int x, y, z;
};
int
main(void)
{
int i; //Declaracion variable entera
TCoordenada p1; //Instancia de la clase TCoordenada en el objeto p1
p1.setX(1); //Usa las funciones de input para meter datos en la clase
p1.setY(2);
p1.setZ(3);
p1.imprimir(); //LLama la funcion de sobrecarga de la clase TCoordenada
return 0;
}
No hay comentarios:
Publicar un comentario