Exercice : Modélisation orientée objet d'animaux en C++
Dans cet exercice, vous êtes chargé de modéliser une classe Animal en C++. Chaque animal a des caractéristiques spécifiques (code, nom, âge, couleurs) et la classe permet aussi de gérer un nombre total d’animaux créés. Cet exercice a pour objectif pédagogique :
- Comprendre l’utilisation des attributs d’instance et attributs de classe.
- Savoir implémenter plusieurs constructeurs et un destructeur.
- Travailler avec les tableaux de chaînes de caractères.
- Utiliser des méthodes statiques et surcharger des opérateurs (==, etc).
- Structurer le code en trois fichiers
.h, .cxx et main.cxx.
Spécifications de la classe Animal
Fichiers demandés :
animal.h : déclaration de la classe.
animal.cxx : implémentation des méthodes.
main.cxx : test de la classe Animal.
Travail à faire
- Créez une classe
Animal avec :
- Attributs privés :
string nom;
int age;
string couleurs[3]; // tableau de trois couleurs
int code; // code d'animal généré automatiquement
- Attribut de classe :
static int nbAni; // nombre total d’animaux
- Constructeurs :
- Un constructeur par défaut (initialise des valeurs ).
- Un constructeur paramétré (nom, âge, tableau de couleurs).
- Un constructeur de copie.
- Méthodes :
- Des accesseurs (
getNom(), getAge(), getCouleur(int i), getCode()),
- Des mutateurs (
setNom(string), setAge(int), setCouleur(int, string)),
- Une méthode
affichage() pour afficher toutes les informations de l'animal,
- Une méthode statique
int getNbAni() pour retourner le nombre total d'animaux créés,
- Une méthode statique
Animal* lire_Animal() pour saisir les infos à partir du clavier .
- Surchargez les opérateurs :
== : retourne vrai si deux animaux ont le même nom et âge,