Variable global

Signaler
Messages postés
19
Date d'inscription
mercredi 31 octobre 2007
Statut
Membre
Dernière intervention
3 octobre 2011
-
Messages postés
3819
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
28 septembre 2020
-
Bonjour
voici mon probleme
je dispose de trois fichier
dessin.cpp
param.cpp
global.h
j ai une variable global:double temp_x, qui instanciée dans global.h

dans param.cpp
je set la variable temp_x dans le fichier param.cpp
donc temp = 10;

dans dessin.cpp
j veux recuperer la valeur de temp_x qui vaut normalement 10, que c une variable globale.
Incomprehension????
lorsque je recupere la valeur de temp_x dans "void dessin(){}" elle est toujours egal a 10; mais si jamais j essaye de recupere la valeur temp_x en dehors d'une fonction, la valeur de temp_x est 0.
quelqu un aurai t il une explication a cette valeur qui est s annule si c est pas en ddehors de la fonction


en clair

dans param.cpp
#include global.h

void param()
{
temp_x = 10;
}

//fin de param.cpp

dessin.cpp

#include global.h

printf("valeur de temp_x %d", temp_x); affiche 0

void dessin()
{
printf("valeur de temp_x %d", temp_x); affiche 10
}
//fin de dessin.cpp

1 réponse

Messages postés
3819
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
28 septembre 2020
113
1) Les variables globales sont à proscrire. Si tu en as dans ton code, il y a 99,99% de chance que tu soit en train d'écrire un code dégueulasse. Il n'y a aucune raison d'en utiliser.
3) Vu l'usage que tu en fait, j'ai l'impression que tu cherches à avoir des constantes. Dans ce cas l'usage d'un "static const double temp_x = 10;" est largement mieux.

________________________________________________________________________
Historique de mes créations, et quelques articles:[ http://0217021.free.fr/portfolio
http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question