Bonjour,

Comment peut on accéder à une variable statique déclarée dans le fichier .cc et .h et ceci à partir des instances de la classe déclaré dans ces fichiers.
voilà le code:
file_A.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
class A{
   A();  //constructeur de la classe
   int index;
};
file_A.cc
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
static int max_index =0;
A::A(){
   index =max_index++;
}
ce que je veux est d'accéder à max_index à partir d'une classe dérivé de A:

exemple:
file_derivedA.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 #include "A.h"
class derivedA{
   derivedA();         //constructeur de la classe
};
file_derivedA.cc
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
derivedA::derivedA(){
   A::max_index--;             // c'est ici que ça coince 
}
l'erreur est: "max_index is not a member of A".

j'ai ajouté "int A::max_index;" avant "derivedA::derivedA()" mais l'erreur reportée est que "max_index is not a static member of class A".


des suggestions car le problème est que je doit autant que possible ne pas modifier les fichiers A.cc et A.h


Merci.