This is an old revision of the document!
Une classe peut définir des éléments dit statiques.
Les éléments pouvant être définis comme étant statiques sont :
Ces éléments sont appelés membres statiques ou membres de classes du fait qu'ils sont accessibles sans qu'il soit nécessaire de construire l'objet. Ainsi la méthode execute()
définie comme statique dans la classe A
pourra être appelée sans qu'il soit nécessaire de créer un objet de type A
mais simplement en faisant référence à la classe par un appel de type A::execute()
. De même, le champ const double Pi = 3.14
défini comme statique dans la classe B
pourrait être accéder en faisant référence non pas à une instance de l'objet mais simplement en faisant référence au nome de la classe A
, soit A::Pi
.
D'une certaine manière, les autres membres de la classe que sont :
sont par essence liés à la classe et non pas à l'instance de l'objet. D'une certaine manière, ces éléments sont déjà statiques par construction.
Une méthode (ou fonction membre) statique (aussi appelée méthode de classe) est une méthode définie au sein de la classe et préfixée par le mot clé static
.
class Complex { private: double m_real; double m_imaginary; public: Complex(double theRealPart, double theImaginaryPart): m_real(theRealPart), m_imaginary(theImaginaryPart) {} static Complex createFromPolar(double rho, double theta) { return Complex(rho*cos(theta), rho*sin(theta); } }