Professional Documents
Culture Documents
Índice
1 CLASE PUNTO...........................................................................................................................................1
1.1 FICHERO PUNTO.H................................................................................................................................1
1.2 FICHERO PUNTO.CPP ...........................................................................................................................1
2 CLASE RECTÁNGULO ............................................................................................................................2
2.1 FICHERO RECTANGULO.H .....................................................................................................................2
2.2 FICHERO RECTANGULO.CPP ..................................................................................................................3
3 CLASE CIRCULO ......................................................................................................................................4
3.1 FICHERO CIRCULO.H .............................................................................................................................4
3.2 FICHERO CIRCULO.CPP .........................................................................................................................5
4 CLASE CICLINDRO .................................................................................................................................6
4.1 FICHERO CICLINDRO.H .........................................................................................................................6
4.2 FICHERO CILINDRO.CPP ........................................................................................................................6
5 EJEMPLO DE UTILIZACIÓN DE ESTAS CLASES ............................................................................7
Ejemplo de Clases en C++
1 Clase Punto
//---------------------------------------------------------------------------
// Clase Punto
//---------------------------------------------------------------------------
#ifndef PuntoH
#define PuntoH
//---------------------------------------------------------------------------
#include "math.h"
//---------------------------------------------------------------------------
class Punto
{
private:
double x , y ;
double dameX( ) ;
double dameY( ) ;
};
//---------------------------------------------------------------------------
#endif
//---------------------------------------------------------------------------
// Constructores
MGB 1
Ejemplo de Clases en C++
//---------------------------------------------------------------------------
Punto::Punto( )
{
x=y=0;
}
//---------------------------------------------------------------------------
Punto::Punto( double a , double b )
{
x=a;
y=b;
}
//---------------------------------------------------------------------------
// Destructor
//---------------------------------------------------------------------------
Punto::~Punto()
{
//---------------------------------------------------------------------------
// Otros Métodos
//---------------------------------------------------------------------------
void Punto::trasladar ( double a , double b )
{
x += a ;
y += b ;
}
//---------------------------------------------------------------------------
double Punto::distancia( Punto pto )
{
return( sqrt( pow( x - pto.x, 2) + pow( y - pto.y, 2))) ;
}
//---------------------------------------------------------------------------
void Punto::ponX( double _x)
{
x = _x ;
}
2 Clase Rectángulo
2.1 Fichero Rectangulo.h
//---------------------------------------------------------------------------
#ifndef RectanguloH
#define RectanguloH
//---------------------------------------------------------------------------
#include "Punto.H"
//---------------------------------------------------------------------------
class Rectangulo: public Punto
{
MGB 2
Ejemplo de Clases en C++
private:
double lh, lv ;
double dameLH( ) ;
double dameLV( ) ;
};
#endif
//---------------------------------------------------------------------------
#include "Rectangulo.h"
//---------------------------------------------------------------------------
Rectangulo::Rectangulo ( ): Punto()
{
lv = 10 ;
lh = 10 ;
}
//---------------------------------------------------------------------------
Rectangulo::Rectangulo( Punto p, double _lh, double _lv): Punto( p)
{
lh = _lh ;
lv = _lv ;
}
//---------------------------------------------------------------------------
Rectangulo::~Rectangulo()
{
}
//---------------------------------------------------------------------------
void Rectangulo::ponLH( double _lh)
{
lh = _lh ;
}
//---------------------------------------------------------------------------
void Rectangulo::ponLV( double _lv)
{
lv = _lv ;
}
MGB 3
Ejemplo de Clases en C++
//---------------------------------------------------------------------------
double Rectangulo::dameLH( )
{
return( lh) ;
}
//---------------------------------------------------------------------------
double Rectangulo::dameLV( )
{
return( lv) ;
}
//---------------------------------------------------------------------------
double Rectangulo::area()
{
return( lh * lv) ;
}
//---------------------------------------------------------------------------
double Rectangulo::perimetro()
{
return( 2 * lh + 2 * lv) ;
}
//---------------------------------------------------------------------------
3 Clase Circulo
3.1 Fichero circulo.h
//---------------------------------------------------------------------------
// Circulo
//---------------------------------------------------------------------------
#ifndef CirculoH
#define CirculoH
//---------------------------------------------------------------------------
#include "Punto.H"
//---------------------------------------------------------------------------
class Circulo: public Punto
{
private:
double radio ;
double dameRadio( ) ;
MGB 4
Ejemplo de Clases en C++
//---------------------------------------------------------------------------
#include "Circulo.h"
//---------------------------------------------------------------------------
// Constructores
//---------------------------------------------------------------------------
Circulo::Circulo ( ) :Punto()
{
radio = 10 ;
}
//---------------------------------------------------------------------------
Circulo::Circulo( Punto p, double r): Punto( p)
{
radio = r ;
}
//---------------------------------------------------------------------------
// Destructor
//---------------------------------------------------------------------------
Circulo::~Circulo()
{
}
//---------------------------------------------------------------------------
void Circulo::ponRadio( double _r)
{
radio = _r ;
}
//---------------------------------------------------------------------------
double Circulo::dameRadio( )
{
return( radio) ;
}
//---------------------------------------------------------------------------
double Circulo::area()
{
const double PI = 3.1514 ;
//---------------------------------------------------------------------------
double Circulo::perimetro()
{
const double PI = 3.1514 ;
return( 2 * PI * radio) ;
}
//---------------------------------------------------------------------------
MGB 5
Ejemplo de Clases en C++
4 Clase Ciclindro
4.1 Fichero Ciclindro.h
//---------------------------------------------------------------------------
#ifndef CilindroH
#define CilindroH
//---------------------------------------------------------------------------
#include "Circulo.H"
//---------------------------------------------------------------------------
class Cilindro: public Circulo
{
private:
double altura ;
double dameAltura( ) ;
};
//---------------------------------------------------------------------------
#endif
//---------------------------------------------------------------------------
Cilindro::Cilindro ( ): Circulo()
{
altura = 15 ;
}
//---------------------------------------------------------------------------
Cilindro::Cilindro( Circulo c, double a): Circulo( c)
{
altura = a ;
}
//---------------------------------------------------------------------------
MGB 6
Ejemplo de Clases en C++
Cilindro::~Cilindro()
{
}
//---------------------------------------------------------------------------
void Cilindro::ponAltura( double _a)
{
altura = _a ;
}
//---------------------------------------------------------------------------
double Cilindro::dameAltura( )
{
return( altura) ;
}
//---------------------------------------------------------------------------
double Cilindro::area()
{
const double PI = 3.1514 ;
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include "Circulo.h"
#include "Cilindro.h"
#include "conio.h"
#include "iostream.h"
//---------------------------------------------------------------------------
int main( int argc, char* argv[])
{
Circulo c1 ; //= new Circulo;
Punto p1 ;
Punto *p2 ;
Cilindro ci( c1, 20) ;
MGB 7
Ejemplo de Clases en C++
delete p2 ;
getch() ;
return 0;
}
//---------------------------------------------------------------------------
MGB 8