Je debute en C++

S’il vous plait, me tirez pas dessus, je débute en C++
Je commence des exercices simples en programmation mais je suis un peu perdu, j’aurais besoin de votre aide pour commencer

Construire une class Animal qui a pour attribut une chaine de 10 caracteres et un integer age
La class Animal a 3 constructeurs ayant pour parametre respectif

  • un pointeur animal
  • un entier
  • une reference animal

La class Animal a pour fonction membre Affiche qui affiche ses attributs
et une fonction membre initage
qui prend un parametre entier pour mettre à jour l’age de l’animal
Faire une fonction Main qui utilise toutes les fonctions définies avec les objets
suivants :
Animal *A;
Animal An;

Une proposition de code:

class animal
{private: // A ne pas oublier! POO=encapsulation=>il faut préciser si c’est du public, private, protected.
int m_age;
char nom[11];//Ca devrait aller pour la chaine de caractère nom… ?

public: // A ne pas oublier! POO=encapsulation=>il faut préciser si c’est du public, private, protected.

//Les constructeurs:
animal(int);
animal(*animal);
animal(&animal);
//Les autres méthodes:
void affiche(animal);
void initage(animal);
//Le destructeur: optionnel ici?};

//Les méthodes ??

Je n’ai pas encore fait beaucoup de C++, donc sous réserves d’erreurs ^^" !

Bon alors t’as un bon début, mais au niveau des méthodes, t’as des erreurs :

void affiche(animal);
void initage(animal);

alors que l’énnoncé demande :

  1. La class Animal a pour fonction membre Affiche qui affiche ses attributs
    => Alors pour utiliser une classe (en général) il faut instancier un objet (tout comme pour utiliser un “int” tu instancies une variable)
    pour une variable tu fais int maVar;
    pour un objet nomDeLaClasse monObjet; (dans ton cas Animal monObjet)

Une méthode s’applique sur un objet (donc par exemple sur monObjet) de cette façon : monObjet.methode() (ou monObjet->methode si monObjet est un pointeur sur un objet de classe Animal).
La méthode appelée a directement accès à ses attributs (monObjet va avoir accès à SA variable m_age et à SA chaine de caractère).

La méthode Affiche, affiche les attributs … elle n’a donc pas besoin de paramètre d’entrée.

2)une fonction membre initage qui prend un parametre entier pour mettre à jour l’age de l’animal
Dans ton cas de figure, la fonction initage prend quoi en argument ??? quelque chose de “type” animal, non? alors qu’il faudrait un int (je te laisse faire la modification).

Pour le moment t’as juste déclaré ta classe, mais elle n’est pas encore définit !
Pour cela, dans le fichier .cpp il faut que tu écris ce que fait chaque méthode.

(je connais pas ton niveau en c++ donc désolé si j’ai fait vraiment trop simple)

www.siteduzero.com…