Salut,
En VB, on peut trouver des méthodes ayant comme paramètres des champs précédés du mot réservé optional. Dans ce cas, ces paramètres peuvent être omis lors d'un appel à la méthode concernée.
Est ce que la notion d'optional existe en Delphi ?
Salut,
En VB, on peut trouver des méthodes ayant comme paramètres des champs précédés du mot réservé optional. Dans ce cas, ces paramètres peuvent être omis lors d'un appel à la méthode concernée.
Est ce que la notion d'optional existe en Delphi ?
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa.
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil.
There is no cure for stupidity (ou pas).
non, mais on peut donner une valeur par défaut
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 function test(valeur1:string; valeur2:integer=123); begin end; begin test('utilise la valeur par défaut'); test('force la valeur',456); end.
Merci. Y aurait-il un moyen pour savoir si cette valeur par défaut a été spécifiée dans l'appel de méthode ?
Si je ne veux pas spécifier une valeur par défaut je serais obligé de faire :
Code Delphi : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 procedure test(valeur1:string; valeur2:integer);overload; procedure test(valeur1:string);overload; procedure test(valeur1:string; valeur2:integer); begin end; procedure test(valeur1:string); begin end; begin test('utilise la valeur par défaut'); test('force la valeur',456); end.
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa.
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil.
There is no cure for stupidity (ou pas).
je ne comprend pas bien là,
si tu fais ça ce sont deux méthodes différentes avec des traitements différents (ou tu répètes le code)
je ne connais pas les paramètres optionnels de VB...mais sous Delphi, rien n'est optionnel, tu peux ignorer un paramètre, lui donner une valeur par défaut pour ne pas le saisir (pas comme le ,, de VB) mais il existe toujours.
peux-tu préciser ce que tu cherches à faire ?
Envoyé par AL1986
Je voulais dire en répétant le même code dans les deux fonctions, mais je pense que ce n'est pas très utile.Envoyé par Paul TOTH
Sinon, pour ma question d'avant:
Envoyé par AL1986
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa.
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil.
There is no cure for stupidity (ou pas).
Il n'y a pas moyen de savoir si la valeur par défaut a été utilisée ou non, sauf si la valeur que tu donnes par défaut n'est pas une valeur "acceptable" normalement. Par exemple, -1 pour un entier positif.
Les valeurs par défaut ne sont pas des paramètres optionnels. Comme l'a dit Paul Toth, si tu ne mets pas le paramètre, il est quand même mis "automatiquement" comme si tu avais spécifié la valeur par défaut.
Si tu as vraiment besoin de savoir si un paramètre a été donné ou non, tu dois ajouter un booléen.
sjrd, ancien rédacteur/modérateur Delphi.
Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
Découvrez Mes tutoriels.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager