Programación de ordenadores ha evolucionado desde que aparecieron los primeros ordenadores personales. Estilos de programación han evolucionado también. En la actualidad, la mayoría de los lenguajes de programación admiten un diseño orientado a objetos , es decir , se basan en la creación de objetos , que son un híbrido de los datos y las funciones relacionadas con los datos. Los objetos se implementan en las estructuras de datos llamados clases . Diseño de una clase de círculo requiere definir miembros de datos ( centro y radio ) y para definir las operaciones , denominadas funciones , en relación con los miembros de datos . Una clase de círculo es una abstracción de un círculo, con los miembros de datos y operaciones sobre los datos . Instrucciones
Diseño de la Clase
1
Configure la clase mediante nombrado y agrupar miembros públicos y privados. Las funciones de la clase son miembros públicos , y los datos son los miembros privados . En C + + , el diseño de una clase está contenida en un archivo de cabecera . Para este ejemplo , el archivo de cabecera se llama " circle.h . " Este es el código de ejemplo :
/circle.h
círculo /clase;
{
público :
2
Crear constructores de clase y destructores . Constructores de clase son funciones que crean una instancia del objeto. Los constructores /destructores clase deben ser las siguientes :
constructor predeterminado , que proporciona ningún parámetro
constructor Parameter
, que proporciona datos para el centro y el radio del círculo
< p . . > Copy Constructor , que crea una instancia como una copia de otro objeto círculo.
el destructor de la clase va a destruir el objeto una vez que ya no se utiliza .
Añada esta línea a la cabecera archivo :
círculo (); constructor
círculo //default (float , float, float ) //parámetro de constructor
circle ( círculo ) //constructor de copia
círculo ~ (); //destructor
3
Definir las operaciones en el círculo. El primer conjunto de operaciones debe ser capaz de manipular los miembros de datos de la clase , es decir, funciones para cambiar el centro y el radio del círculo . Inserte el siguiente código:
void newcenter ( float, float ) ;
void newradius (float ) ;
4
incluye una función para encontrar el área de la círculo. Esto es importante , ya que las áreas se utilizan a menudo para algunos otros cálculos . Para calcular el área , se necesita el valor de Pi y el radio del círculo , que es miembro de datos . El área se expresa como un número de punto flotante. Inserte el siguiente código:
circlearea float ();
5
Definir una función para determinar si un punto se encuentra dentro del círculo. La función tendrá que saber las coordenadas del punto de probar . Una vez que la función determina si el punto está dentro del círculo , devolverá un valor verdadero o falso. Agregue el código siguiente :
dentro bool ( float, float ) :
6
Crea miembros de datos . Para una abstracción círculo, el centro y el radio son los datos mínimos requeridos . El centro puede ser expresada como dos puntos de coordenadas ( x e y ) , y el radio es cualquier número . Estas son las líneas de código para los miembros de datos :
privada :
radio
float ;
flotador centerx ;
flotador CenterY ;
< p >}
implementar la clase
7
Escriba las definiciones de funciones. C + + , escribe las definiciones en un archivo separado con el mismo nombre que el archivo de cabecera , pero con una extensión cpp . . Una de las funciones incluidas en la clase usará poderes y raíz cuadrada. Estas operaciones se proporcionan en la biblioteca " matemáticas " de C + + . Este es el código:
//circle.cpp
# include del l //esta biblioteca contiene raíces cuadradas poder y
8
Definir los constructores . El constructor por defecto no toma parámetros y crea un círculo con centro en el punto (0,0 ) y radio 1 . El parámetro de constructor inicializa el círculo a los parámetros proporcionados por el usuario . El constructor de copia tira de los miembros de datos a partir de un círculo existente y los copia en el nuevo objeto círculo. El destructor se crea automáticamente por el compilador. Este es el código:
círculo :: círculo () //default r , float cx, cy float ) //parámetro a) //copia //destructor
{
} ;
9
Definir las funciones que cambian el centro y el radio del círculo objeto . Estas funciones sobrescriben los valores de los miembros de datos . Este es el código:
círculo vacío :: newcenter (float nx , floatny ) //cambia el centro del círculo
{
centerx = nx ;
CenterY = ny ;
} ;
void newradius (float nr) //cambia el radio del círculo
{
radio = nr ;
} ;
10
Escribir la implementación de la función para calcular el área del círculo. Esta función no requiere entradas adicionales . Aquí está el código :
círculo float :: circlearea ()
{
const float PI = 3.141592 , con Z. flotador
;
< p> area = pi * radio * radio ;
regreso (área) ;
} ;
11
Escribir la función de averiguar si un punto está dentro el círculo. Esta función requiere de las coordenadas del punto de prueba, dos números de punto flotante , como entrada. El algoritmo es simple : Calcular la distancia entre el centro del círculo y el punto de prueba . Si la distancia es menor o igual que el radio , es el punto en el interior del círculo ( VERDADERO ) , de lo contrario , el punto se encuentra fuera del círculo ( FALSO ) . Este es el código:
círculo bool :: adentro (float cx, cy float )
{
distancia flotador ;
distancia = sqrt ( pow ( ( cx - centerx ) , 2 ) + pow ( (cy - CenterY ) , 2 ));
if ( distancia < = radio )
return ( TRUE) ;
más
return ( false);
} ;