Fonction renvoyant plusieurs resultats

[Résolu]
Signaler
Messages postés
104
Date d'inscription
dimanche 29 octobre 2000
Statut
Membre
Dernière intervention
12 décembre 2005
-
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
-
Bonjour,

Je voudrais savoir s'il est possible qu'une fonction renvoie plusieurs chaines?

Exemple:

j'envoi à ma fonction la chaine suivante: str1#str2#str3#str4 ect...

Donc le signe # me sert de séparateur pour str1,str2,str3,str4...

J'arrive sans problème à récuperer ces valeurs, mais je voudrais en
faire une fonction le problème c'est que je ne vois pas comment faire
pour qu'une fonction me renvois les 4 chaines bien distinctes les unes
des autres...



Y'a til une solution



merci


++

5 réponses

Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
7
Hello,



Comme ceci :



Function MaFonction (var Str1,Str2,Str3,Str4 : String) : Boolean;

begin



end;

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
Messages postés
309
Date d'inscription
jeudi 6 juin 2002
Statut
Membre
Dernière intervention
24 septembre 2008
2
Bonjour DonOChoa,

jmp77 vient de te donner la réponse à ta question juste au dessus ...

sois tu utilises une fonction de se type :

Function MaFonction (const str : string; var Str1,Str2,Str3,Str4 : string) : boolean;

avec cette fonction tu lui passe ta chaine de traitement str = str1#str2#str3#str4 puis les quatres variables de retour str1, str2, str3, str4.

Une autre méthode est possible si tu ne souhaites pas déclarer de variables de retour :

Function MaFunction(const str : string; const index : integer) : string;
avec cette fonction tu lui passe ta chaine de traitement str str1#str2#str3#str4 puis ton <gras>index 1 ou 2 ou 3 ou 4</gras> et tu récupères en retours la valeur souhaiter.

Bonne Prog,

Olivier

PS : Lorsqu'une réponse vous convient, n'oubliez pas de la valider.
Messages postés
104
Date d'inscription
dimanche 29 octobre 2000
Statut
Membre
Dernière intervention
12 décembre 2005

En fait voila le type de fonction que jesouhaiterai:

function MaFonction(str : string):str1,str2,str3,str4:string;



que j'utiliserai par exemple de cette facon:

edit1.text:=Mafonction(str1#str2#str3#str4):str1;

edit2.text:=Mafonction(str1#str2#str3#str4):str2;

etc...



hm voila, encore une fois je pense pas que ce soit possible?

ca m'éviterai d'avoir à écrire 4 fonction differentes....

++
Messages postés
104
Date d'inscription
dimanche 29 octobre 2000
Statut
Membre
Dernière intervention
12 décembre 2005

Ah ok j'avais pas compris l'histoire du var ...



Ok ben merci à tous les deux :D

Bonne soirée

++
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
regarde TStringList.delimitedtext



ça devrait faire ce que tu veux.


Loda