Je souahite passer une adresse à une procédure (procédure d'un événement dont
les paramètres ne peuvent être que des entiers) et que cette procédure puisse me
donner le contenu de la variable.
Par exemple :
//------ APPEL PAR ADRESSE -----------
LOCAL
sz est une chaîne = Bonjour"
-- Ce message a été posté via la plateforme Web club-Internet.fr This message has been posted by the Web platform club-Internet.fr
http://forums.club-internet.fr/
Jean Cougnaud
Bonjour,
D'après ce que je comprends, Erwan veut des paramètres numériques, or, si je ne me trompe, le code ci-dessous utilise un paramètre alphanumérique. Il ne passe pas l'adresse de sz mais sz lui-même, même si Windev effectue la correspondance avec l'adresse de la variable.
Jean
"farplus" a écrit dans le message de news:
bonjour,
en effet windev passe les paramètres par adresse, c-a-d:
sz="Bonjour" test(sz) info(sz) // texte affiché: Bonjour et bonne santé
-- Ce message a été posté via la plateforme Web club-Internet.fr This message has been posted by the Web platform club-Internet.fr
http://forums.club-internet.fr/
Bonjour,
D'après ce que je comprends, Erwan veut des paramètres numériques, or, si je
ne me trompe, le code ci-dessous utilise un paramètre alphanumérique. Il ne
passe pas l'adresse de sz mais sz lui-même, même si Windev effectue la
correspondance avec l'adresse de la variable.
Jean
"farplus" <farplus@free.fr> a écrit dans le message de
news:200384-19292-174965@foorum.com...
bonjour,
en effet windev passe les paramètres par adresse, c-a-d:
sz="Bonjour"
test(sz)
info(sz)
// texte affiché: Bonjour et bonne santé
D'après ce que je comprends, Erwan veut des paramètres numériques, or, si je ne me trompe, le code ci-dessous utilise un paramètre alphanumérique. Il ne passe pas l'adresse de sz mais sz lui-même, même si Windev effectue la correspondance avec l'adresse de la variable.
Jean
"farplus" a écrit dans le message de news:
bonjour,
en effet windev passe les paramètres par adresse, c-a-d:
sz="Bonjour" test(sz) info(sz) // texte affiché: Bonjour et bonne santé
avec WD75, il y a encore un moyen plus propre pour le passage par valeur : utiliser le mot clé LOCAL dans la déclaration d'arguments de la procédure. C'est plus propre et plus sûr (car alors on est sûr que le parametre ne sera pas modifié à la sortie) mais c'est moins souple que les doubles-parenthèses :
Par contre, je crois qu'on est un peu hors sujet par rapport au post initial étant donné qu'Erwan ne cherche pas vraiment à passer son argument "par adresse" mais plutôt à passer l'adresse de son argument en gardant la possibilité de récupérer la valeur de sa variable...
Jean a donné la solution je crois : il faut passer la taille de la chaine et utiliser transfert.
A+ -- Romain PETIT (mailto:rompetit_chez_ifrance.com)
avec WD75, il y a encore un moyen plus propre pour le passage par valeur :
utiliser le mot clé LOCAL dans la déclaration d'arguments de la procédure.
C'est plus propre et plus sûr (car alors on est sûr que le parametre ne sera
pas modifié à la sortie) mais c'est moins souple que les doubles-parenthèses
:
Par contre, je crois qu'on est un peu hors sujet par rapport au post initial
étant donné qu'Erwan ne cherche pas vraiment à passer son argument "par
adresse" mais plutôt à passer l'adresse de son argument en gardant la
possibilité de récupérer la valeur de sa variable...
Jean a donné la solution je crois : il faut passer la taille de la chaine et
utiliser transfert.
A+
--
Romain PETIT
(mailto:rompetit_chez_ifrance.com)
avec WD75, il y a encore un moyen plus propre pour le passage par valeur : utiliser le mot clé LOCAL dans la déclaration d'arguments de la procédure. C'est plus propre et plus sûr (car alors on est sûr que le parametre ne sera pas modifié à la sortie) mais c'est moins souple que les doubles-parenthèses :
Par contre, je crois qu'on est un peu hors sujet par rapport au post initial étant donné qu'Erwan ne cherche pas vraiment à passer son argument "par adresse" mais plutôt à passer l'adresse de son argument en gardant la possibilité de récupérer la valeur de sa variable...
Jean a donné la solution je crois : il faut passer la taille de la chaine et utiliser transfert.
A+ -- Romain PETIT (mailto:rompetit_chez_ifrance.com)
Erwan
Merci pour toutes ces réponses. La solution utilisant le mot "Transfert" me semble la bonne mais hélas, cela ne semble pas fonctionner avec mon paramètres (un objet d'une classe de ma création). Cette voie là ne me semble pas la bonne, mais merci encore pour vos réponses. -- Ce message a été posté via la plateforme Web club-Internet.fr This message has been posted by the Web platform club-Internet.fr
http://forums.club-internet.fr/
Merci pour toutes ces réponses. La solution utilisant le mot "Transfert" me
semble la bonne mais hélas, cela ne semble pas fonctionner avec mon paramètres
(un objet d'une classe de ma création). Cette voie là ne me semble pas la bonne,
mais merci encore pour vos réponses.
--
Ce message a été posté via la plateforme Web club-Internet.fr
This message has been posted by the Web platform club-Internet.fr
Merci pour toutes ces réponses. La solution utilisant le mot "Transfert" me semble la bonne mais hélas, cela ne semble pas fonctionner avec mon paramètres (un objet d'une classe de ma création). Cette voie là ne me semble pas la bonne, mais merci encore pour vos réponses. -- Ce message a été posté via la plateforme Web club-Internet.fr This message has been posted by the Web platform club-Internet.fr