[C#] Utilisation de paramètres réels dans une fonction [Résolu]

Signaler
Messages postés
86
Date d'inscription
jeudi 23 octobre 2003
Statut
Membre
Dernière intervention
21 juin 2007
-
Messages postés
86
Date d'inscription
jeudi 23 octobre 2003
Statut
Membre
Dernière intervention
21 juin 2007
-
Bonjour,
voilà mon p'tit pb...

En fait j'ai une appli de plusieurs milliers de lignes, et mon pc n'est pas trop une bête de course, donc ça rame à fond quand j'édite du code ou quand je veux repasser en mode design...

J'ai donc créé une classe où je conserve pas mal de fonctions afin de soulager un peu ma form MainForm.cs...

Le problème, c'est pour les fonctions qui nécessitent l'utilisation de variables de ma form...
Elles n'étaient pas reconnues. Je les ai donc passé en paramêtres de ma fonction...
Là ça roule presque, à part que mes variables sont passées en tant que paramêtres formels et qu'à l'exécution de ma fonction, le résultat n'est pas conservé dans ma variable de ma form...

Alors voici ma question, comment fait-on pour passer une variable en tant que paramètre réel ?

Merci d'avance pour vos réponses...

PS : un bout de mon code pour vous montrer où ça coince...

//dans mon MainForm.cs
...
string IP, DNS;
...
fonctions.récup_infos(IP, DNS);
...

//dans mon fonctions.cs
public class fonctions
{
...
void static récup_infos(string IP, string DNS)
{
...
}
...
}

J'aurai plusieurs fonctions avec 3 ou 4 paramètres à retourner donc hors de question de faire un return (valeur), mais il me faudrait (là je parle en programmation C) une procédure avec passage de paramètres réels...
Si c possible

5 réponses

Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
39
Salut,

private void DoSomething( ref int myParam )
{
// ..
}
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
64
Hello,

Utilise le mot clef ref. Il permet de donner la référence du paramètre, et donc celui-ci peut se retrouvé modifié à la sortie de la fonction.

Exemple : void static recup_infos(ref string IP, ref string DNS)...

Amicalement, SharpMao
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
39
Si ton paramètre n'est pas initialisé:

private void DoSomething( out int myParam ) { /* ... */ }
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
64
J'ai bien l'impression que j'ai été pris de vitesse.

Amicalement, SharpMao
Messages postés
86
Date d'inscription
jeudi 23 octobre 2003
Statut
Membre
Dernière intervention
21 juin 2007
2
Merci les mecs, ça marche du tonnerre...