Passer un tableau en paramètre [Résolu]

Messages postés
23
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
22 août 2008
- - Dernière réponse : cs_Bidou
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
- 15 août 2008 à 22:03
Bonjour,

j'aimerais savoir comment passer un tableau de string ,(ArrayList) plus précisement, à une fonction. Voici mon code:

public ArrayList LireTableau(ArrayList monTableau) { //CODE//}

Le problème qui se pose est le suivant: monTableau est un ArrayList qui contient des données. Ainsi, il ne s'agit pas d'un tableau vide. Lorsque j'exécute la fonction, mon programme semble le considérer comme un tableau vide. Je sais qu'en C++ je pourrais passer une référence vers monTableau et ça fonctionnerait. Également, j'ai essayé (ref ArrayList monTableau) et ça ne fonctionne pas.
Comment je peux faire en C# pour passer un tableau qui contient des valeurs et pouvoir faire un traitement sur ces valeurs. En fait, je trie les éléments de monTableau et je les mets dans un autre ArrayList.

Merci pour votre aide.

Topnotch
Afficher la suite 

4 réponses

Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
65
3
Merci
Salut,

Ce n'est pas un tableau vu que c'est une instance d'ArrayList, et vu le prototype de la fonction, ça devrait fonctionner correctement.
Comment est effectué l'appel ?

/*
coq
MVP Visual C#
CoqBlog
*/

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 120 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_coq
Messages postés
23
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
22 août 2008
3
Merci
Merci coq pour ton aide. En effet, ça fonctionne. Voici comment j'ai procédé: Dans ma classe j'ai construis ma fonction de cette manière:

public ArrayList LireFichier(ref ArrayList monTableau)
{
             //CODE//
}

Dans le Main: je déclare comme ceci:  tab2 =  fichier.LireFichier(ref monVecteur);

c'est le ref qui ne faut pas oublier, important!

Merci

Topnotch

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 120 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Topnotch
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
65
0
Merci
Heu non ref ne sert à rien là, ArrayList est un type référence.
Dans le cas présent ref n'est utile que si c'est la méthode LireFichier qui initialise "monTableau".

/*
coq
MVP Visual C#
CoqBlog
*/
Commenter la réponse de cs_coq
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
37
0
Merci
De plus, ArrayList est "une vieille classe", préfères les Generics de C#: List<X> à la place de ArrayList....
(c'est l'équivalent des template de c++)

<hr />
-My Blog-
Commenter la réponse de cs_Bidou