Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Indirection sur variable comment faire?

5 réponses
Avatar
Alexey K.
Bonjour,

Je voudrais encapsuler le SQLAssocie dans une m=E9thode de classe et
l'utiliser comme ceci :

var1 var2, varN sont des chaines
oRequete:mSQLAssocie(var1,var2,....,varN)

Il faut que les variables var1 =E0 varN d=E9clar=E9es en dehors de la
methode soient affect=E9es par celle ci.

Comment r=E9aliser cela? En fait je cherche l'=E9quivalent de {} mais sur
les variables (pointeur?). Si il s'agit de pointeurs j'ai lu l'aide sur
l'op=E9rateur & (c'est un peu l=E9ger). Merci de mettre un petit bout de
code si possible.

Cordialement,

Alexey K.

5 réponses

Avatar
patrice
"Alexey K." a écrit dans le message de
news:
Bonjour,

Je voudrais encapsuler le SQLAssocie dans une méthode de classe et
'utiliser comme ceci :



var1 var2, varN sont des chaines
oRequete:mSQLAssocie(var1,var2,....,varN)



Il faut que les variables var1 à varN déclarées en dehors de la
methode soient affectées par celle ci.



Comment réaliser cela? En fait je cherche l'équivalent de {} mais sur



d'apres l'aide, les chaines entre guillemets sont acceptées donc en théorie
:
toto est un entier
mafun("toto")

avec mafun(a est une chaine)
sqlassocie(a)

et si sa marche, reste le pb du nombre variable d'argument
ptet essayé
mafun(a1 est une chaine,a2 est une chaine="")
sqlassocie(a1,a2)
et voir s'il accepte une chaine vide
sinon essayer avec la valeur 'null'
Avatar
Alexey K.
Mon souci c'est que la méthode de classe ne modifie pas directement la
valeur des variables déclarées à l'extérieur et passées en
paramètre (par contre c'est le cas pour les procédures).

Je cherche donc à passer les paramètres par adresse (à une méthode
de classe, pas à une procédure). Je suppose qu'il faut utiliser
l'opérateur &. Par contre quelle est la syntaxe pour écrire une
valeur à cette adresse?

Merci de me corriger si je me trompe.

Cordialement.


patrice a écrit :

"Alexey K." a écrit dans le message de
news:
>Bonjour,
>
>Je voudrais encapsuler le SQLAssocie dans une méthode de classe et
>'utiliser comme ceci :

>var1 var2, varN sont des chaines
>oRequete:mSQLAssocie(var1,var2,....,varN)

>Il faut que les variables var1 à varN déclarées en dehors de la
>methode soient affectées par celle ci.

>Comment réaliser cela? En fait je cherche l'équivalent de {} mais sur

d'apres l'aide, les chaines entre guillemets sont acceptées donc en th éorie
:
toto est un entier
mafun("toto")

avec mafun(a est une chaine)
sqlassocie(a)

et si sa marche, reste le pb du nombre variable d'argument
ptet essayé
mafun(a1 est une chaine,a2 est une chaine="")
sqlassocie(a1,a2)
et voir s'il accepte une chaine vide
sinon essayer avec la valeur 'null'


Avatar
Romain PETIT
Alexey K. avait soumis l'idée :
Mon souci c'est que la méthode de classe ne modifie pas directement la
valeur des variables déclarées à l'extérieur et passées en
paramètre (par contre c'est le cas pour les procédures).



Ah bon ?
Pourtant en 7.5 aucun problème.
Tu es sûr que tu n'as pas des "LOCAL" dans la méthode ?

(ou alors j'ai rien compris à ta demande)

A+

--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Romain PETIT
Romain PETIT a présenté l'énoncé suivant :
Pourtant en 7.5 aucun problème.



oClasse est une cClasse

Machaine1, Machaine2 sont des chaîne
oClasse:MethodeChangeVar(Machaine1, Machaine2)

Info(Machaine1 + TAB + Machaine2)

METHODE MethodeChangeVar(var1 est une chaîne, var2 est une chaîne)
var1 = "toto_"+ DonneIdentifiant()
var2 = "tutu" + DonneIdentifiant()

--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Alexey K.
Bon, je vais faire dés essai.

Si en effet ça marche comme tu dis tout devrait aller.

Merci.

Romain PETIT a écrit :

Romain PETIT a présenté l'énoncé suivant :
> Pourtant en 7.5 aucun problème.

oClasse est une cClasse

Machaine1, Machaine2 sont des chaîne
oClasse:MethodeChangeVar(Machaine1, Machaine2)

Info(Machaine1 + TAB + Machaine2)

METHODE MethodeChangeVar(var1 est une chaîne, var2 est une chaîne)
var1 = "toto_"+ DonneIdentifiant()
var2 = "tutu" + DonneIdentifiant()

--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)