Variable Global

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
djmcg
Messages : 139
Inscription : sam. 28/août/2004 6:37

Variable Global

Message par djmcg »

donc on ne peux pas faire ?

GLOBAL CheminImage.s = "C:\Mes programmes\"

puis passé à la procédure CheminImage ?

Quelques chose que je n'ai pas compris avec les variables global.
Bon ben, je cherche. (si vous avez une piste)

Merci bonne journée.
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

Code : Tout sélectionner

Global CheminImage
CheminImage.s = "C:\Mes programmes\"
Modifié suite à l'inervention du grand et inconnu soldat
Dernière modification par Oliv le mar. 28/sept./2004 19:39, modifié 2 fois.
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

Il faut déclarer les variables globales puis dans une autre instruction leur assigner une valeur.

On déclare d'abord la variable globale avant de lui assigner une valeur (problème vu dans un post de Heis)
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

Oliv, tu fais tout à l'envers, faut inverser les 2 lignes :roll:
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

:oops: je sais pas à quoi je pensais hier désolé
djmcg
Messages : 139
Inscription : sam. 28/août/2004 6:37

Message par djmcg »

Merci

Y vraiment quelques chose que je saisis pas.

Il faut bien faire par exemple:

Global CheminImage.s

puis :

CheminImage = "C:\Mes Images"

et quand je passe la variable a la procédure il suffit de mettre la variable (variable) comme suit :

Procedure Carre(CheminImage)

EndProcedure
Lukky
Messages : 340
Inscription : dim. 25/janv./2004 12:22
Localisation : Morbihan

Message par Lukky »

Denis est d'accord avec oliv mais le soldat dit l'inverse, qui a raison ?

Moi perso j'aurais d'abord déclaré la variable avec un Global maVariable.s puis je lui aurais assigné une valeur non ?

D'abord on déclare et ensuite on assigne.

De plus pourquoi déclarer la variable global si c'est pour la passer en argument ? Il me semble que ce n'est pas necessaire puisque justement le fait de la globaliser lui permet d'être visible à l'intérieur des procédures.

Mais je peux dire une grosse connerie, je ne m'en voudrais pas.

JL
Quand on me gonfle trop j'éclate, sinon ça va !
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

Nan Lukky, regarde mon 2ème message, je l'ai modifié, je vais le spécifier correctement
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

Non, une fois la variable Global, c=ça ne sert à rien de la passer en paramètre à la procedure car elle directement accessible dans celle-ci

Code : Tout sélectionner

Procedure Carre() 
  LoadImage(0, CheminImage + "carré.bmp")
EndProcedure
par exemple
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
djmcg
Messages : 139
Inscription : sam. 28/août/2004 6:37

Message par djmcg »

Et mon erreur elle était là,
Déclarer une variable global et la passer en paramètre à la procédure.
Mais voilà, il m'a fallut le temps, mais j'ai compris. :lol:
Merci pour votre aide.
Bonne journée.
Lukky
Messages : 340
Inscription : dim. 25/janv./2004 12:22
Localisation : Morbihan

Message par Lukky »

Bon content de voir que j'avais raison moi aussi, pas besoin de passer en argument une variable globale.

Sinon Oliv, j'avais pas vu la petite phrase : Modifié suite à l'inervention du grand et inconnu soldat.

D'ou mon erreur.

Par contre c'est quoi une inervention ? Ca vient d'inervé ?
Le soldat serait-il soupe au lait ?

JL
Quand on me gonfle trop j'éclate, sinon ça va !
Aranoth
Messages : 293
Inscription : sam. 24/janv./2004 12:00
Localisation : Toulouse (31)
Contact :

Message par Aranoth »

justement Djmcg, l'interet des variables globales c'est ca:

Code : Tout sélectionner

;Code 1

Variable.l=1

Procedure.l Rien(var.l)
var+1
ProcedureReturn var
Endprocedure

Variable=Rien(Variable)

ca ca marche (enfin normalement lol)

mais c'est plus simple de faire ca:

Code : Tout sélectionner

;Code 2

Global Variable.l : Variable=1

Procedure Rien()
Variable+1
Endprocedure

Rien()
Meme resultat, mais diablement plus efficace dans le 2nd exemple

:wink:
Dernière modification par Aranoth le mer. 29/sept./2004 20:24, modifié 1 fois.
Débutant en programmation, notament en C++ ?
Vous souhaitez apprendre ?
djmcg
Messages : 139
Inscription : sam. 28/août/2004 6:37

Message par djmcg »

Merci,

je crois que cette fois, j'ai compris.
J'ai essayé ce matin et ces effectivement cela.
Un tous grand merci.
Répondre