PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → Structure et inférence de type
Structure et inférence de type
Iniciado por JLV, 09,abr. 2020 10:33 - No hay respuesta
Miembro registrado
4 mensajes
Publicado el 09,abril 2020 - 10:33
Bonjour,

Lorsque j'utilise l'inférence de type avec une variable structure le type de la nouvelle variable (stNewPersonne) est bien déduit du paramètre servant de référence stPersonne (et la valeur de stPersonne est copiée dans la nouvelle variable) mais et c'est la que se situe mon problème la valeur de la nouvelle variable (stNewPersonne) est copiée dans le paramètre servant de référence (stPersonne). La procédure ne pourra jamais renvoyer VRAI. Ce comportement ne semble pas correspondre à la description de l'aide sur l'inférence de type (https://doc.pcsoft.fr/fr-FR/?3087003&3087003)

"Lors d'une affectation par référence, la valeur de la variable de référence n'est pas copiée dans la nouvelle variable mais la nouvelle variable pointe sur la variable de référence.
Dans ce cas, si la variable qui sert de référence est modifiée, la nouvelle variable est aussi modifiée."

Avez-vous déjà rencontré ce problème et comment l'avez-vous résolu ?

Merci d'avance

code appelant :

//structure
STPersonne est une Structure
sNom est une chaîne
FIN

//variable et initialisation
stClient est une STPersonne
stClient.sNom = "DUPOND"

//appel procedure
RENVOYER NewPersonne(stClient)

procedure :

PROCÉDURE NewPersonne(stPersonne)

soit stNewPersonne <- stPersonne
stNewPersonne.sNom = "DURAND"

SI stNewPersonne.sNom <> stPersonne.sNom ALORS
RENVOYER Vrai
SINON
RENVOYER Faux
FIN