Partager via


Fonctions membres de constante

La déclaration d'une fonction membre avec le mot clé const indique que la fonction est une fonction « Lecture seule » qui ne modifie pas l'objet pour lequel elle est appelée. Une fonction membre constante ne peut pas modifier les données membres non static ou appeler des fonctions membres qui ne sont pas constantes.

Pour déclarer une fonction membre constante, placez le mot clé const après la parenthèse fermante de la liste d'arguments. Le mot clé const est requis dans la déclaration et la définition.

Exemple

// constant_member_function.cpp
class Date
{
public:
   Date( int mn, int dy, int yr );
   int getMonth() const;     // A read-only function
   void setMonth( int mn );   // A write function; can't be const
private:
   int month;
};

int Date::getMonth() const
{
   return month;        // Doesn't modify anything
}
void Date::setMonth( int mn )
{
   month = mn;          // Modifies data member
}
int main()
{
   Date MyDate( 7, 4, 1998 );
   const Date BirthDate( 1, 18, 1953 );
   MyDate.setMonth( 4 );    // Okay
   BirthDate.getMonth();    // Okay
   BirthDate.setMonth( 4 ); // C2662 Error
}

Voir aussi

Référence

const (C++)

Valeurs constantes