Remplir une variable static?

Résolu
bubbathemaster Messages postés 339 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 25 mars 2009 - 22 mai 2008 à 13:45
bubbathemaster Messages postés 339 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 25 mars 2009 - 22 mai 2008 à 14:38
Bonjour,

Comment fait-on pour modifier un objet static en C#, par exemple une liste?

En Java on peut faire:

Class Test
{
static List<string> toto = new List<string>();
static: { toto.Add("salut"); toto.Add("truc"); toto.Add("muche"); }
}

Comment fait-on ça en C# ? Pas trouvé d'autres solutions que de tester si la liste est vide dans le constructeur et la remplir le cas échéant.

3 réponses

WishhhMaster Messages postés 327 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 10 avril 2010 8
22 mai 2008 à 14:32
Salut,

Tu eux utiliser un constructeur static

class Test
{
static List<string> toto;

static Test ()//constructeur static
{
toto = new List<string>();
toto.Add("salut");
}
}

"Un constructeur statique est appelé automatiquement pour initialiser la classe avant que la première instance soit créée ou que tous les membres statiques sont référencés"

La doc est ici: http://msdn.microsoft.com/fr-fr/library/k9x6w0hc(VS.80).aspx
3
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 36
22 mai 2008 à 14:34
tu peux créer un constructeur static...

Class Test {
   static List<string> toto = new List<string>();
   
   static Test() {
      toto.Add("salut");
      ...
   }
}

Sébastien FERRAND (blog)
Consultant Sénior
[Microsoft Visual C# MVP]
3
bubbathemaster Messages postés 339 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 25 mars 2009 4
22 mai 2008 à 14:38
oki merci :D
0
Rejoignez-nous