La programmation informatique a évolué depuis les premiers ordinateurs personnels sont apparus. styles de programmation ont évolué. À l'heure actuelle, la plupart des langages de programmation prennent en charge une conception orientée objet, qui est, ils comptent sur la création d'objets, qui sont un hybride de données et de fonctions liées à ces données. Les objets sont mis en œuvre dans les structures de données appelées classes. Concevoir une classe de cercle vous oblige à définir des membres de données (centre et le rayon) et de définir les opérations, appelées fonctions, liées aux membres de données. Une classe de cercle est une abstraction d'un cercle, avec les membres de données et opérations sur les données.
Instructions
Concevoir la classe
1 Mettre en place la classe en le nommant et le regroupement des membres publics et privés. Les fonctions de la classe sont des membres du public, et les données sont membres privés. En C ++, la conception d'une classe est contenue dans un fichier d'en-tête. Pour cet exemple, le fichier d'en-tête est appelé "circle.h." Ceci est l'exemple de code:
// circle.h
cercle de classe;
{
public:
2 Créer des constructeurs de classe et destructeurs. Les constructeurs de classe sont des fonctions qui créent une instance de l'objet. Les constructeurs de classe / destructeurs doivent être les suivantes:
Par défaut constructeur, qui fournit aucun paramètre.
constructeur Paramètre, qui fournit des données pour le centre et le rayon du cercle.
Copie Constructor, ce qui crée une instance comme une copie d'un autre objet de cercle.
Le destructeur de la classe va détruire l'objet une fois qu'il ne sera plus utilisé.
Ajoutez ces lignes dans le fichier d'en-tête:
cercle(); // Constructeur par défaut
cercle (float, float, float); // Constructeur de paramètre
cercle (cercle); // Constructeur de copie
~ Cercle (); // destructor
3 Définir les opérations sur le cercle. La première série d'opérations doit être en mesure de manipuler les données membres de la classe, qui est, des fonctions pour changer le centre et le rayon du cercle. Insérez le code suivant:
nouveauCenter void (float, float);
newradius void (float);
4 Inclure une fonction pour trouver la zone du cercle. Ceci est important, car les zones sont souvent utilisées pour d'autres calculs. Pour calculer la zone, vous avez besoin de la valeur de Pi et le rayon du cercle, qui est membre de données. La zone est exprimée en nombre à virgule flottante. Insérez le code suivant:
flotter circlearea ();
5 Définir une fonction pour déterminer si un point est situé à l'intérieur du cercle. La fonction aura besoin de connaître les coordonnées du point à tester. Une fois que la fonction détermine si le point est à l'intérieur du cercle, il retournera une valeur vraie ou fausse. Ajoutez le code suivant:
bool intérieur (float, float):
6 Créer des données membres. Pour une abstraction de cercle, le centre et le rayon sont l'ensemble de données minimum requis. Le centre peut être exprimé sous la forme de deux points de coordonnées (x et y), et dont le rayon est un nombre quelconque. Ce sont les lignes de code pour les membres de données:
privé:
flotter rayon;
flotter CenterX;
flotter centery;
}
Mettre en œuvre la classe
7 Notez les définitions de fonctions. C ++ écrit les définitions dans un fichier séparé avec le même nom que le fichier d'en-tête, mais avec une extension .cpp. L'une des fonctions incluses dans la classe utilisera les pouvoirs et la racine carrée. Ces opérations sont prévues dans le "math" bibliothèque de C ++. Voici le code:
//circle.cpp
include <math> // cette bibliothèque contient puissance et de racine carrée opérations
8 Définir les constructeurs. Le constructeur par défaut ne prend aucun paramètre et crée un cercle dont le centre est le point (0,0) et de rayon 1. Le constructeur de paramètre initialise le cercle des paramètres fournis par l'utilisateur. Le constructeur de copie tire les membres de données à partir d'un cercle et les copie existante dans le nouvel objet cercle. Le destructor est automatiquement créé par le compilateur. Voici le code:
cercle :: cercle () // constructeur par défaut
{
rayon = 1;
CenterX = 0;
centery = 0;
};
cercle :: cercle (float r, float cx, float cy) // constructeur de paramètre
{
rayon = r;
CenterX = cx;
centery = cy;
};
cercle :: cercle (cercle a) // constructeur de copie
{
rayon = a.radius;
CenterX = a.centerx;
centery = a.centery;
};
cercle :: ~ cercle () // destructor
{
};
9 Définir les fonctions qui changent le centre et le rayon de l'objet de cercle. Ces fonctions remplacent les valeurs des membres de données. Voici le code:
cercle vide :: nouveauCenter (float nx, floatny) // change le centre du cercle
{
CenterX = nx;
centery = ny;
};
newradius void (float nr) // change le rayon du cercle
{
rayon = nr;
};
dix Écrivez la mise en œuvre de la fonction pour calculer la superficie du cercle. Cette fonction nécessite pas d'entrées supplémentaires. Voici le code:
float cercle :: circlearea ()
{
const float PI = 3.141592;
zone flotter;
rayon =
rayon de PI de la zone;
retour (région);
};
11 Ecrire la fonction pour savoir si un point est à l'intérieur du cercle. Cette fonction requiert les coordonnées du point à tester, deux nombres à virgule flottante, comme entrée. L'algorithme est simple: Calculez la distance entre le centre du cercle et le point de test. Si la distance est inférieure ou égale au rayon, le point est à l'intérieur du cercle (TRUE); autrement, le point est en dehors du cercle (FALSE). Voici le code:
cercle bool :: intérieur (float cx, float cy)
{
flotter à distance;
Distance = sqrt (pow ((cx-CenterX), 2) + pow ((cy-centery), 2));
if (distance <= rayon)
retour (TRUE);
autre
retour (FALSE);
};
Conseils et avertissements
- Vous pouvez inclure plus de fonctions sur la classe. Il suffit d'ajouter le prototype sur le fichier d'en-tête et la définition sur le fichier cpp.
- Le symbole "//" en C ++ est utilisé pour les commentaires. Vous pouvez l'inclure partout dans le code pour clarifier et décrire le code.