|
| Procèdure qui accepte diffrents types de variables |
| Iniciado por Kevin, 02,jun. 2020 17:08 - 3 respuestas |
| |
| | | |
|
| |
Miembro registrado 160 mensajes |
|
| Publicado el 02,junio 2020 - 17:08 |
Bonjour,
Pour déclarer une procédure en windev on utilise cette syntaxe : ex :
FunctionFoo( arg is integer )
serait-il possible de passer des paramètres de type différents (ex : string, real...) sans modifier la signature de la fonction
L'équivalent des templates en C++ ou les génériques en C# |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 170 mensajes |
|
| Publicado el 02,junio 2020 - 17:12 |
Salut,
p-e avec un clic droit sur la procédure, Ajouter une syntaxe, et implémenter une version de la procédure avec une autre signature...
-- Hth, Padbrain |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 160 mensajes |
|
| Publicado el 02,junio 2020 - 17:32 |
Merci Padbrain pour la réponse
C'est justement ce que j'essaye d'éviter...
actuellement ce que je fais pour contourner ça c'est d'utiliser un objet d'une classe avec un seul membre de type variant :
ClassFoo is a Class VarFoo is Variant ; END
Ensuite je passe tout l'objet à ma fonction :
FunctionFoo( arg is ClassFoo ) |
| |
| |
| | | |
|
| | |
| |
| Publicado el 02,junio 2020 - 17:39 |
Si j'ai bien compris ta question: tu n'es pas obligé de déclarer le type du paramètre, et tu peux envoyer le type de paramètres que tu désires https://doc.pcsoft.fr/fr-FR/?1514076&name=typage_des_parametres "Par défaut, le type de la variable passée en paramètre lors de l'appel de la procédure est utilisé dans la procédure"
Donc normalement tu peux juste faire FONCTION NomDeTaFonction(arg) et envoyer le type que tu veux en tant que arg |
| |
| |
| | | |
|
| | | | |
| | |
|