Getsuyodev, Programming is mainly used when constructing an application. Programming requires knowledge of application domains, algorithms, and programming language expertise. Programming can be developed in different logic based on developer knowledge.

C Sharp – Type value: Enum

Programmation en C# (C Sharp)



Un type enum est un type valeur qui permet de déclarer un ensemble de constantes de base
comme en pascal. En C#, chaque énumération de type enum, possède un type sous-jacent, qui
peut être de n’importe quel des types entier : byte, sbyte, short, ushort, int, uint, long ou ulong.

Le type int est le type sous-jacent par défaut des éléments de l’énumération.

  • Par défaut, le premier énumérateur a la valeur 0, et l’énumérateur de rang n a la valeur n-1.

Exemple :

enum etatCivil { marie, pacs, veuf, divorce, celibataire }
par défaut : rang de marie=0, rang de pacs=1, ... , rang de celibataire=4
  • Il est possible d’attribuer des valeurs personnalisées à une ou à plusieurs constantes de l’énumération :

Exemple :

enum etatCivil { marie=1, pacs=2, veuf=4, divorce=8, celibataire=16 }
par construction : rang de marie=1, rang de pacs=2, ... , rang de celibataire=16

Ces valeurs peuvent être fournies par calcul binaire avec les opérateurs bit-level :
enum etatCivil { marie=1, pacs=2, veuf=4, divorce=8, celibataire=16, seul=veuf|divorce|celibataire }
par construction : rang de marie=1, ... , rang de seul=28

using System;
public enum etatCivil1        
{
marie,   pacs,  veuf,  divorce,  celibataire,  seul =-1
// =0         =1       =2          =3             =4                 =-1
}
public enum etatCivil2        
{
marie=1,    pacs=2,        veuf=4,       divorce=8,    celibataire=16, 
// =(1)           =(10)             =(100)          =(1000)        =(10000)
seul    =     veuf | divorce | celibataire,  // valeur binaire
// =28            car :  4(100) | 8(1000) | 16(10000) = 28(11100)
couple    =     marie| pacs // valeur binaire
// =3            car :  0(00) | 2(10)  = 3(11)

}


class Exercice
{
public static void Main( ) 
{
etatCivil1 etat = etatCivil1.celibataire;        
Console.WriteLine("etat : "+etat );
etat = etatCivil1.seul ;        
Console.WriteLine("etat : "+etat );

etatCivil2 etat2 = etatCivil2.celibataire;        
Console.WriteLine("etat2 : "+etat2 );
etat2= etatCivil2.seul ;        
Console.WriteLine("etat2 : "+etat2 );

Console.ReadLine();
}
}



Comments are closed, but trackbacks and pingbacks are open.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More