Home
Browsez les 647 exemples
Téléchargez les 647 exemples
Téléchargez des chapitres
Achetez sur amazon.fr

Niveau: Débutant/Intermédiaire
ISBN-2-84177-339-6
50 Euros

Exemple 10-28 extrait du chapitre Le système de types


Exemple 10-27<     > Exemple 10-29


Cet exemple peut être compilé avec la ligne de commande:
csc.exe /target:exe Exemple_10_28.cs
Erreurs: 0 Avertissements: 0
Remarque:


Exemple_10_28.cs
// Dans cet exemple, pas besoin de plus qu'un octet.
[System.Flags()]
enum Drapeaux : byte { 
   Drapeau1 = 0x01, // Le bit 1 est à1, les autres à 0.
   Drapeau2 = 0x04, // Le bit 3 est à1, les autres à 0.
   Drapeau3 = 0x10  // Le bit 5 est à1, les autres à 0. 
}
class Program {
   public static void Main() {
      // En binaire, Drap vaut 10001000.
      Drapeaux drapeau = Drapeaux.Drapeau1 | Drapeaux.Drapeau3;
      // (Si le bit 1 est positionné) équivalent à
      // (Si Drapeau1 positionné).
      if ((drapeau & Drapeaux.Drapeau1) > 0) { /* */ }
      // (Si les bits 3 et 5 sont positionnés) équivalent à
      // (Si Drapeau2 et Drapeau3 positionnés).
      if ( (drapeau & Drapeaux.Drapeau2) > && 
           (drapeau & Drapeaux.Drapeau3) > )
      { /* */ }
      System.Console.WriteLine( drapeau.ToString() );
   }
}	
Copyright Patrick Smacchia 2006 2007