ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Les methodes d'extension - extension methods   



L'auteur

Gregory Adam
Belgique Belgique
Membre Actif (personne physique)
# 0000001121
enregistré le 04/06/2006

Fiche personnelle


Note des membres
pas de note

Contributions > 80 dotnet > 01 C#

Les methodes d'extension - extension methods
# 0000000653
ajouté le 03/11/2008 18:36:09 et modifié le 11/11/2008
consulté 5512 fois
Niveau débutant


Le téléchargement des pièces jointes est limité aux membres
Veuillez vous identifier ou vous inscrire si vous n'avez pas encore de compte ...
Description

Les méthodes d’extension – ou comment rendre la vie en .Net agréable

Les grands avantages des méthodes d’extension sont :

-          on peut étendre des classes verrouillées (sealed)

-          étendre des classes dont on n’a même pas les sources

Un autre avantage est qu’on peut utiliser les ‘generics’ = écrire une fois pour plusieurs types/classes . 

Si on invoque avec un type int, le JIT va le compiler pour utiliser la classe int.  Si on l’utilise avec un double, la méthode sera JITted pour la classe double.  Ainsi on aura la même méthode compilée en mémoire mais plusieurs fois

 

Le Zip contient un début d’utilisation de ces méthodes d’extension


 

11/11/2008

  • support de null dans Between(.., ..)
  • ajout de ChrTran() pour les string
Code source :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using GregoryAdam.Base.ExtensionMethods;


namespace GregoryAdam.Test
{
  class TestExtension
  {
    static void Main(string[] args)
    {
      Console.WriteLine(" 2.Between(1,3) {0}", 2.Between(1, 3));
      Console.WriteLine(" 2.0.Between(1.,3.) {0}", 2.0.Between(1.0, 3.0));

      Console.WriteLine(" \"B\".Between(\"A\",\"C\") {0}""B".Between("A""C"));

      Console.WriteLine(" 2.InList(1,2) {0}", 2.InList(1, 2));
      Console.WriteLine(" 2.0.Inlist(1.,2.) {0}", 2.0.InList(1.0, 2.0));

      Console.WriteLine(" \"B\".InList(\"A\",\"B\") {0}""B".InList("A""B"));


      Console.ReadLine();
    }
  }
}
Commentaires
Aucun commentaire enregistré ...

www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2020.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3