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 13-12 extrait du chapitre La généricité


Exemple 13-11<     > Exemple 13-13


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


Exemple_13_12.cs
interface ICompteur{ 
   void Increment();
   int Val{get;}
}
struct Compteur : ICompteur {
   private int i;
   public void Increment() { i++; }
   public int Val { get return i; } }
}
class C<T> where T : ICompteur, new() {
   public void Fct(){
      T t = new T();
      t.Increment();   // Modifie l'état de t.
      System.Console.WriteLine( t.Val.ToString() );

      // Modifie l'état d'une copie boxée de t.
      (t as ICompteur).Increment(); 
      System.Console.WriteLine(t.Val.ToString());
   }
}
class Program {
   static void Main() {
      C<Compteur> c = new C<Compteur>();
      c.Fct();
   }
}	
Copyright Patrick Smacchia 2006 2007