Está en la página 1de 10

Informática Industrial

División de programa con clases en ficheros


Del C al C++
 Hemos visto la definción de clases en un sólo fichero.

Atributos: datos miembros


típicamente definidos como
privados.

Dos constructores sobrecargados.

Funciones para acceder a los datos


miembros

Funciones miembro para calcular


norma y función amiga para
sobrecargar operador binario +
Del C al C++
 Hemos visto la definción de clases en un sólo fichero.

Función main de prueba

Se accede a los atributos no


directamente (son privados) sino a
través de las funciones de acceso
Del C al C++

Sin embargo, está definición que mezcla la interfaz (la


definición de la clase y la forma de llamar a sus funciones
miembros) con la implementación, no es una buena idea. Va
contra el grado de encapsulamiento necesario. El usuario de
la clase no necesita saber como esta ha sido implementada.
El C++ provee los mecanismos para separar la interfaz de la
implementación.
Del C al C++ Se definen los atributos (datos) y
los prototipos de los métodos.
En el caso de funciones simple
como las de acceso, se suele dejar
la implementación.

Interfaz
Fuera de la clase, se define la
implementación de los
métodos. Para identificar a
que clase pertenecen, se el

Implementación
operador :: antecedido por el
nombre de la clase. Observar
que la función friend en
realidad no pertenece a la
clase
Del C al C++

Una vez que se tienen separadas la definición de la clase y su


implementación, ambas se colocan en ficheros diferentes:
 La definición se coloca en un fichero .h con el nombre de la
clase.
 La implementación se coloca en un fichero .cpp también con
el nombre de la clase.
 El fichero de implementación debe incluir el fichero con la
definición correspondiente. Ej #include “VectorPlano.h”
Del C al C++

CODEBLOCKS:

File-> New-> Class


Del C al C++

el fichero que contine main() debe


incluir el fichero de definición de
la clase VectorPlano puesto que la
utiliza. Observe el uso de las “”.

El asistente crea automáticamente los ficheros necesarios.


Del C al C++
En VectorPlano.h

Se utilizan directivas del


compilador para impedir múltiples
redefiniciones de la clase
Del C al C++
En VectorPlano.cpp
En el fichero de implementación
VectorPlano.cpp se debe incluir el
fichero VectorPlano.h con la
definicición de la interfaz de la
clase.

También podría gustarte