[C++]Liste d'initialisation

Sandra -  
benkeeper Messages postés 81 Date d'inscription   Statut Membre Dernière intervention   -
Hello,

J'ai 2 fichiers Animal.cc et Animal.hh :
#ifndef ANIMAL_HH
#define ANIMAL_HH

class Animal{
private:
  int poids;
  int age;
  
public:
  Animal(int poids, int age);
  ~Animal();
  int getPoids();
  int getAge();
  void affichage();
};

#endif




#include <iostream>
using namespace std;

#include "Animal.hh"

Animal::Animal(int poids, int age){
  this->poids = poids;
  this->age = age;
}

Animal::~Animal(){}

int Animal::getPoids(){
  return poids;
}

int Animal::getAge(){
  return age;
}

void Animal::affichage(){
 cout << "Poids = " << getPoids() << "\nAge = " << getAge() << endl; 
}

int main(){
  Animal anim(50, 2);
  anim.affichage();
  return 0;
}

Je souhaite créer un constructeur par défaut pour un animal
Comment faut-il faire ?
Comment est-ce qu'il doit être écrit dans le fichier .hh

Merci
A voir également:

1 réponse

benkeeper Messages postés 81 Date d'inscription   Statut Membre Dernière intervention   45
 
Tout simplement comme ça :

Animal(); (dans le .hh)

et définit dans le .cc :

Animal()
{
//ce qui est fait par défaut
}


C'est de la surcharge en fait. Si tu crées ton objet en lui passant les paramètre age et poids il utilise le constructeur correspondant, si tu ne lui précise rien il utilise le constructeur par défaut.


Ben :)
0