next up previous
Next: Destructeur par défaut Up: Les classes Previous: Définir un opérateur

Constructeur par défaut

Au moment où un objet de type Tableau est déclaré, une partie de la mémoire sera réservée pour stocker ses différents champs. Plus précisément, la déclaration de l'objet appelle une fonction membre particulière, désignée sous le nom de constructeur, qui, par défaut, se contente de déclarer les différents champs de l'objet. Si l'un de ces champs est lui-même un objet d'une certaine classe, le constructeur de cette classe sera appelé pour déclarer et constuire ce champ.

Ce constructeur peut être précisé dans la classe si l'on veut exécuter d'autres instructions à ce moment-là. Par convention, le constructeur porte le nom de la classe et ne renvoie rien. Il est nécessairement public puisqu'il est appelé lors de la déclaration d'un objet (en dehors de la classe). Ainsi dans le cas de la classe Vecteur on peut préciser le constructeur de la façon suivante:

class Tableau {

  double* tab;
  int n;

 public: 

  Tableau(){
    n = 0;
  }

  // autres champs et fonctions membres

};

Ainsi maintenant, la simple déclaration:

Tableau A;
aura également pour effet d'initialiser la valeur de A.n à 0.

Le constructeur n'est appelé qu'au moment de la déclaration d'un objet. On ne peut pas l'appeler (manuellement par son nom) dans d'autres circonstances.


next up previous
Next: Destructeur par défaut Up: Les classes Previous: Définir un opérateur
Guillaume Charpiat 2006-12-07