Tecnología

Inicio

Cómo escribir código para crear una clase de círculo

la programación informática ha evolucionado desde aparecieron los primeros ordenadores personales. estilos de programación han evolucionado también. Actualmente, la mayoría de los lenguajes de programación soportan un diseño orientado a objetos, es decir, que se basan en la creación de objetos, que son un híbrido de los datos y las funciones relacionadas con esos datos. Los objetos se implementan en las estructuras de datos llamadas clases. El diseño de una clase de círculo que requiere para definir miembros de datos (centro y radio) y definir las operaciones, llamadas funciones, en relación con los miembros de datos. Una clase círculo es una abstracción de un círculo, con los miembros de datos y las operaciones sobre los datos.

Instrucciones

El diseño de la Clase

1 Configurar la clase mediante nombrado y agrupar los miembros públicos y privados. Las funciones de la clase son miembros públicos, y los datos son 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 de clases;
{
público:

2 Crear constructores de clase y destructores. constructores de clase son funciones que crean una instancia del objeto. Los constructores de clase / destructores deben ser las siguientes:

constructor por defecto, lo que proporciona ningún parámetro.
constructor de parámetros, que proporciona datos para el centro y el radio del círculo.
Constructor de copia, lo 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ñadir estas líneas al archivo de cabecera:

circulo(); // Constructor por defecto
círculo (float, float, float); // Parámetro de constructor
círculo (círculo); // Constructor de copia
~ Círculo (); //incinerador de basuras

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:

newcenter vacío (float, float);
newradius vacío (float);

4 Incluir una función para encontrar el área del 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 coma flotante. Inserte el siguiente código:

flotar circlearea ();

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 prueba. 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:

bool interior (float, float):

6 Crear miembros de datos. Para una abstracción círculo, el centro y el radio son el conjunto mínimo de datos necesarios. 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:

privado:
flotar radio;
centerx flotar;
centery flotar;
}

Implementar la Clase

7 Anote 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 va a utilizar potencias y raíces cuadradas. Estas operaciones se proporcionan en la biblioteca "matemáticas" de C ++. Este es el código:

//circle.cpp

incluir <math> // Esta biblioteca contiene las operaciones de potencia y la raíz cuadrada

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 constructor inicializa el parámetro de círculo a los parámetros proporcionados por el usuario. El constructor de copia tira de los miembros de datos de un círculo existente y los copia en el nuevo objeto círculo. El destructor es creado automáticamente por el compilador. Este es el código:

:: círculo círculo () // constructor por defecto
{
radio = 1;
centerx = 0;
centery = 0;
};
:: círculo círculo (r flotador, flotar cx, cy flotar) // parámetro de constructor
{
radio = r;
centerx = cx;
centery = cy;
};
:: círculo círculo (círculo uno) // constructor de copia
{
radio = a.radius;
centerx = a.centerx;
centery = a.centery;
};
:: ~ círculo círculo () // 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 (nx flotador, floatny) // cambia el centro del círculo
{
centerx = nx;
centery = ny;
};
void newradius (nr float) // 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 requiere no hay entradas adicionales. Aquí está el código:

círculo flotador :: circlearea ()
{
float PI const = 3.141592;
área de flotar;
área de radio =

radio de PI;
volver (área);
};

11 Escribir la función para averiguar si un punto está dentro del círculo. Esta función requiere que las coordenadas del punto de probar, dos números de punto flotante, como entrada. El algoritmo es simple: Calcula la distancia entre el centro del círculo y el punto de prueba. Si la distancia es inferior o igual al radio, el punto se encuentra dentro del círculo (TRUE); de lo contrario, el punto está fuera del círculo (FALSO). Este es el código:

círculo bool :: interior (cx flotar, flotar cy)
{
flotar a distancia;
distancia = sqrt (pow ((cx-centerx), 2) + pow ((CY-centery), 2));
si (distancia <= radio)
volver (TRUE);
más
falso retorno);
};

Consejos y advertencias

  • Puede incluir más funciones en la clase. Sólo tiene que añadir el prototipo en el archivo de cabecera y la definición en el archivo cpp.
  • El símbolo "//" en C ++ se utiliza para comentarios. Se puede incluir en cualquier parte del código para aclarar y describir el código.