Goldeneye007
Messages postés70Date d'inscriptionmercredi 7 décembre 2005StatutMembreDernière intervention 9 juillet 2010
-
3 juin 2006 à 09:33
Flachy Joe
Messages postés2103Date d'inscriptionjeudi 16 septembre 2004StatutMembreDernière intervention21 novembre 2023
-
3 juin 2006 à 18:47
Bonjour à tous,
Oui je suis en vb.net et j'ai une question Données entrées par valeurs ou par référence, je ne sais plus quelle est la différences?
Mon prof me l'avait expliqué mais j'ai oublié qqn peut m'aider?
Merci
Flachy Joe
Messages postés2103Date d'inscriptionjeudi 16 septembre 2004StatutMembreDernière intervention21 novembre 20231 3 juin 2006 à 13:38
Uhuh, t'es donc en révision.
Bon, si tu passe une varaible par valeur alors la fonction ne peut pas modifier la valeur de la variable : expl
Dim x as double
x=2
affichecarre x
msgbox "x vaut " & x
sub affichecarre(BYVAL x as double)
x=x*x
msgbox x
end sub
tu auras les msgbox "4" et "x vaut 2"
Alors qu'en passant par reference, la fonction peut modifier la valeur de la variable :
Dim x as double
x=2
affichecarre2 x
msgbox "x vaut " & x
sub affichecarre2(BYREF x as double)
x=x*x
msgbox x
end sub
Goldeneye007
Messages postés70Date d'inscriptionmercredi 7 décembre 2005StatutMembreDernière intervention 9 juillet 2010 3 juin 2006 à 13:45
ok merci tout dépend ce que l'on veut faire si on veut modifier la variable dans ce cas il faut mettre par référence sinon c'est par valeur, merci pour mon oral ca va m'aider, c'est un oral dinfo où l'on exlpique nos programmes que l'on a fait dans l'année. oral de pti pour ceux qui conaissent jsuis en bts informatique, je vais le noter merci encore
Vous n’avez pas trouvé la réponse que vous recherchez ?
Flachy Joe
Messages postés2103Date d'inscriptionjeudi 16 septembre 2004StatutMembreDernière intervention21 novembre 20231 3 juin 2006 à 18:47
J'ai nommé "x" la variable et le parametre, c'est un mauvais exemple puisqu'il n'y a aucune raison qu'ils aient le même nom.
Pour ceux qui n'aurais pas compris :
Dim x as double
x=2
affichecarre2 x
msgbox "x vaut " & x
sub affichecarre2(BYREF toto as double)
toto = toto*toto
msgbox toto
end sub