Bonjour à tous,

Je développe avec un PC équipe de Windows XP SP3 et de Visual C++ 6.0

J'ai du reprendre un projet existant fait par un de mes anciens collègue et je me retrouve face à un problème de déclaration de variable globale ...

Voici la présentation de mon code :

CLASSE 1 : (dans le fichier TTest.cpp)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
void TTest::OnBtnStopTimer()
{
    int i_valCompteur = 90;
}
CLASSE 2 : (dans le ficher Display.cpp)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
void CDisplay::DisplayAxe(CDC &memDC)
{
    szTmp = DblToStr(dNum);
}
FONCTION DdlToStr : (dans le fichier Display.cpp)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
CString CDisplay::DblToStr(double num)
{
    CString szTmp;
 
// J'AIMERAIS RECUPERER LE CONTENU DE  LA VARIABLE "i_valCompteur " ICI POUR L'UTILISER COMME SUIT :
// szTmp.Format( i_valCompteur  , num); A LA PLACE DE LA LIGNE CI-DESSOUS
    szTmp.Format("%.6f", num);
    return (szTmp);
}
J'ai vu dans la FAQ à ce lien : http://dotnet.developpez.com/faq/cpp...ariableGlobale comment il fallait faire pour déclarer une classe GLOBALE.

Je me suis donc exécuté comme suit :
CLASSE 1 : (dans le fichier TTest.cpp)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
void TTest::OnBtnStopTimer()
{
    VariableGlobale::i_nbrCaracResol = 1;
}
CLASSE 2 DECLARATION GLOBALE : (dans le fichier TTest.cpp)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
class VariableGlobale{
public:static  int i_nbrCaracResol;
};
CLASSE 3 : (dans le ficher Display.cpp)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
void CDisplay::DisplayAxe(CDC &memDC)
{
    szTmp = DblToStr(dNum);
}
FONCTION DdlToStr : (dans le fichier Display.cpp)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
CString CDisplay::DblToStr(double num)
{
    CString szTmp;
   Int test_variable;
 
    test_variable = VariableGlobale::i_nbrCaracResol;
    szTmp.Format("%.6f", num);
    return (szTmp);
}
Voici l'erreur que mon compiltateur me retourne :
C:\...\Display.cpp(96) : error C2653: 'VariableGlobale' : is not a class or namespace name
C:\...\\Display.cpp(97) : error C2065: 'i_nbrCaracResol' : undeclared identifier
TTest.cpp
Je ne comprends pas bien pourquoi il ne reconnait pas ma variable qui est pourtant bien "PUBLIC" ...

Est-ce que vous auriez une petite idée pour me dépanner un peu ? ...

Merci d'avance pour vos réponses ... et salutations à vous tous ...