Static en C++
Résolu
jihane jihane
Messages postés
100
Statut
Membre
-
jihane jihane Messages postés 100 Statut Membre -
jihane jihane Messages postés 100 Statut Membre -
Bonjour,
svp pour quoi en déclare une valeur dans un programme C++ comme étant static et merci d'avance pour votre future réponse
svp pour quoi en déclare une valeur dans un programme C++ comme étant static et merci d'avance pour votre future réponse
A voir également:
- Static en C++
- Adresse IP Static fixe - Forum Bbox Bouygues
- Anti static cable lg tv - Forum Téléviseurs
- [JAVA] difference entre static et final ✓ - Forum Programmation
- Static-spartan-neu-s-msn-com.akamaized.net - Forum Windows 10
- The serializable class does not declare a static final serialversionuid field of type long ✓ - Forum Programmation
2 réponses
Ce ne sont pas des valeurs que l'on déclare "static", mais des variables, ou des méthodes.
Cela signifie qu'elles ont un comportement "de classe" peu importe l'objet courant this.
Une variable static a donc une seule valeur (éventuellement modifiable) peu importe que l'on utilise un objet a, b, ou c...
Exemple (très approximatif) :
Cela signifie qu'elles ont un comportement "de classe" peu importe l'objet courant this.
Une variable static a donc une seule valeur (éventuellement modifiable) peu importe que l'on utilise un objet a, b, ou c...
Exemple (très approximatif) :
static int x = 0; // compte le nombre d'objets instanciés. MaClasse::MaClasse() { x++; } void MaClasse::~MaClasse() { x--; } void static MaClasse::afficher() { std::cout << x << std::endl; } int main(void) { MaClasse::afficher(); // 0 MaClasse a(); MaClasse::afficher(); // 1 a.afficher(); // 1 { MaClasse b(); MaClasse::afficher(); // 2 a.afficher(); // 2 b.afficher(); // 2 } MaClasse::afficher(); // 1 a.afficher(); // 1 return 0; }
KX
Messages postés
19031
Statut
Modérateur
3 020
Code correct à tester (et comprendre)
jihane jihane
Messages postés
100
Statut
Membre
merci pour la réponse , et j'ai bien compris maintenant :)