salut,
Si je fais une fonction qui calcule 4 valeurs entières, comment je peux récupérer les valeurs en question ? Un tableau ? mais une fonction peut-elle retourner un tableau ?
Vous feriez comment ?
salut,
Si je fais une fonction qui calcule 4 valeurs entières, comment je peux récupérer les valeurs en question ? Un tableau ? mais une fonction peut-elle retourner un tableau ?
Vous feriez comment ?
je ne crois pas pour le tableau en result
mais tu peux passer un param out un "array of integer"
et dans le code de la fonction tu fais le SetLength();
sinon tu fais une structure (record) avec 4 entiers, et ça peut être en result de fonction ça
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !![]()
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !
L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs
Oui une fonction peut tout à fait renvoyer un tableau comme résultat.
Pour le prouver voici ce que j'ai fais dans un des mes programmes:
Et ensuite pour utiliser le résultat:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 type TPoint = (x,y); TCoord = array[TPoint] of byte; function getTete(quelque chose) : TCoord; function getQueue(quelque chose) : TCoord;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 var machin: TCoord; abscisse : byte; ordonnée : byte; ... machin := getTete(truc); abscisse := machin[x]; ordonnée := machin[y];
Maintenant, si tes variables sont de même type et de même logique, ça va. Mais si ce n'est pas le cas, préfères quatre paramètres out
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 procedure DoSomething(out Result1, Result2, Result3, Result4 : integer); begin Result1 := 1; Result2 := 1; Result3 := Result1 + Result2; Result4 := Result2 + Result3; end;
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.
Partager