Question élémentaire mais?

Signaler
Messages postés
45
Date d'inscription
mercredi 30 novembre 2005
Statut
Membre
Dernière intervention
6 janvier 2006
-
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
-
Bonjour
J'ai une question élémentaire mais?
Sous Visual C++6, quand je déclare une variable (genre « int a ; ») hors d'une classe, elle est déclarée comme global (normal !). Mais quand je veux l'utiliser dans une méthode (inclut dans une class) j'obtiens un message d'erreur genre : 'a' : undeclared identifier.
Je dois faire comment? ?
Merci

5 réponses

Messages postés
101
Date d'inscription
dimanche 1 mai 2005
Statut
Membre
Dernière intervention
13 décembre 2007
1
tu la déclare comment hors de la classe?
Messages postés
45
Date d'inscription
mercredi 30 novembre 2005
Statut
Membre
Dernière intervention
6 janvier 2006

Ben je la place dans un fichier .cpp ou .h mais par exemple à la fin ou hors d'une méthode
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Si c'est dans un fichier différent, c'est normal que la variable ne soit pas reconnue. Dans ce cas tu dois la déclarer en extern
Messages postés
45
Date d'inscription
mercredi 30 novembre 2005
Statut
Membre
Dernière intervention
6 janvier 2006

Bon j'ai trouvé alors je fais passé l'info :
Dans une méthode, pour atteindre une variable global (définie hors d'une méthode ou d'une class) il faut faire précéder la variable de ::
L'opérateur ::, appelé opérateur de résolution de portée, permet d'accéder à des variables globales plutôt qu'à des variables locales.

Voir : http://www.commentcamarche.net/cpp/cppvar.php3
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Puisqu'ici il n'y a pas de variable locale, il devrai aller chercher automatiquement dans les variables globales. C'est sur que ca marche je l'ai fait plus d'une fois