Exercice 2: Extension des classes circle et sphere

Dans cet exercice, vous utilisez le visualiseur C++ et le diagramme de classe que vous avez créé dans le premier exercice, afin d'ajouter une opération aux classes circle et sphere.

Dans l'exercice précédent, vous avez utilisé le visualiseur C++ pour afficher la hiérarchie du projet C++ Shapes. Vous pouvez également utiliser le visualiseur C++ pour ajouter des classes à un projet ou pour ajouter des propriétés et des méthodes à une classe. Dans cet exercice, vous ajoutez la méthode getCircumference aux classes circle et sphere. La méthode getCircumference calcule la circonférence de la forme et du cercle à l'aide du rayon.

Ajout de la méthode getCircumference à la classe circle

La formule qui calcule la circonférence d'un cercle est pi x r x r, où r représente le rayon du cercle. La constante globale pi est stockée dans la classe shape de base.

Pour ajouter la méthode getCircumference à la classe circle, procédez comme suit :
  1. Dans le diagramme classdiagram.dnx de l'éditeur de diagramme, cliquez à l'aide du bouton droit de la souris sur la classe circle, puis cliquez sur Ajouter C/C++ > Méthode.
  2. Dans la zone Nom de la fenêtre Créer la méthode C++, tapez getCircumference.
  3. Dans la liste Type de retour, sélectionnez double et cliquez sur Terminer.
  4. Dans la classe circle, cliquez deux fois sur la méthode getCircumference et, dans l'éditeur de code, définissez le corps de la méthode getCircumference comme suit :
    {return pi * (2 * getSize());};
  5. Dans l'éditeur de code, ajoutez la ligne de code suivante à la méthode print :
    << "\n\tCircumference = " << getCircumference()

Vous venez d'ajouter la méthode getCircumference à la classe circle. La méthode getCircumference utilise la variable de taille de la méthode getSize et la constante globale pi pour calculer la circonférence. Vous avez également modifié la méthode print pour imprimer la sortie de la méthode getCircumference.

Ajout de la méthode getCircumference à la classe sphere

La formule qui calcule la circonférence d'une sphère au niveau du diamètre le plus élevé est identique à la formule utilisée dans l'étape précédente.

Pour ajouter la méthode getCircumference à la classe sphere, procédez comme suit :
  1. Dans le diagramme classdiagram.dnx de l'éditeur de diagramme, cliquez à l'aide du bouton droit de la souris sur la classe sphere, puis cliquez sur Ajouter C/C++ > Méthode.
  2. Dans la zone Nom de la fenêtre Créer la méthode C++, tapez getCircumference.
  3. Dans la liste Type de retour, sélectionnez double et cliquez sur Terminer.
  4. Dans la classe sphere, cliquez deux fois sur la méthode getCircumference et, dans l'éditeur de code, définissez le corps de la méthode getCircumference comme suit :
    {return pi * (2 * getSize());};
  5. Dans l'éditeur de code, ajoutez la ligne de code suivante à la méthode print :
    << "\n\tCircumference = " << getCircumference()

Vous venez d'utiliser les outils de développement visuel UML et l'éditeur de code pour ajouter la méthode getCircumference aux classes circle et sphere.

Exécution de l'application Shapes

Vous pouvez lancer l'application en modifiant la classe main.cpp. Cette dernière est le pilote de l'application C++ Shapes.

Pour lancer l'application Shapes, procédez comme suit :
  1. Dans la vue Explorateur de projet C/C++, cliquez deux fois sur la classe main.cpp.
  2. Dans l'éditeur de code, ajoutez le code suivant dans le corps principal du programme :
    //instanciation et exécution de la classe sphere
    sphere sp;
    sp.print();
    sp.set();
    sp.print();
  3. Pour sauvegarder et générer le projet, cliquez sur Fichier > Enregistrer.
  4. Cliquez sur Exécuter > Exécuter.
  5. Dans la fenêtre Exécuter cliquez deux fois sur C/C++ Local dans la liste Configurations.
  6. Dans la zone Projet, tapez Shapes.
  7. Dans la zone Application C/C++, cliquez sur Parcourir et sélectionnez le fichier exécutable Shapes.exe dans le répertoire Shapes\debug.
  8. Cliquez sur Exécuter.

Le programme Shapes s'exécute dans la vue Console et affiche la sortie suivante :

Enter the radius of the sphere: 10
Enter the color of the sphere: Blue
Sphere:
	Radius = 10
	Circumference = 62.8319
	Area   = 1256.64
	Volume = 4188.79
	Color  = Blue

Le programme affiche la taille et la couleur de la forme en cours et vous invite à entrer des valeurs pour la nouvelle forme. Les attributs de la nouvelle forme s'affichent dans la vue Console. Vous pouvez modifier le code dans main.cpp pour exécuter la classe circle.

Pour continuer, allez à la section Exercice 3 : Création de la classe cone.