Reinitialization d'un array [Résolu]

Signaler
Messages postés
666
Date d'inscription
dimanche 16 décembre 2007
Statut
Membre
Dernière intervention
11 mars 2010
-
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
-
Bonsoir

Encore un truc tres simple en C pour lequel en Csharp il faut faire appel a un plombier polonais et un interpreteur de documentation multi neuronal !

J'aimerais remetre a zero tous les elements d'un tableau d'integer déclaré comme suit

int[] counts = new int[50];

Dans ma grande candeur de débutant, j'avais cru naivement que initialize servait a ca mais ca marche pas
Et d'ailleurs la doc ne m'a toujours pas permis de capter ce que ca fait exactement ....

Apres avoir cherché 20 minutes dans la doc j'ai jugé plus rapide de faire une bete boucle.

En C il y avait le tres utile memset !!

5 réponses

Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
34
Salut, c'est tout aussi simple :

Array.Clear( tab, 0, tab.Length );
Messages postés
666
Date d'inscription
dimanche 16 décembre 2007
Statut
Membre
Dernière intervention
11 mars 2010
3
Merci !
Et initialize, ca sert a quoi ??
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
49
Documenté dans MSDN:
This method is designed to help compilers support value-type arrays; most users do not need this method. It must not be used on reference-type arrays.

<hr />
-My Blog-
Messages postés
666
Date d'inscription
dimanche 16 décembre 2007
Statut
Membre
Dernière intervention
11 mars 2010
3
Salut

Ouais !

En fait je me demande quel est vraiment l'avantage car avec une "bete" boucle le code n'est pas plus gros et on peut faire plus (choisir la valeur du reset par exemple)

for (int k 0; k < 10; k++) dags[k] 0;

Array.Clear(dags, 0, dags.Length);
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
85
Les perfs, surtout sur les gros tableaux.

/*
coq
MVP Visual C#
CoqBlog
*/