Comment utiliser où

Comment utiliser où
Les contraintes de type générique en C # permettent aux développeurs de définir l'ensemble de types qu'un paramètre de type générique peut représenter. Cette fonction permet au compilateur d'appliquer la sécurité de type et empêche les erreurs qui pourraient se produire pendant l'exécution. L'une des contraintes les plus utilisées est le "où" contrainte, cet article expliquera ce que le "où" La contrainte est en C # et comment l'utiliser dans votre code.

Quelle est la contrainte «où»

Le "où" La contrainte est une contrainte de type générique en C # qui permet aux développeurs de spécifier le paramètre de type qu'un type générique peut représenter. La contrainte est spécifiée en utilisant le "où" mot-clé suivi du paramètre de type et de la contrainte, la syntaxe pour l'utilisation "où" La contrainte est la suivante:

Nom de classe publique où t: contrainte

// Implémentation de classe

Ici le "Nom du cours" représente le nom de la classe avec un paramètre de type générique "T". Le "où" Le mot-clé spécifie la contrainte du paramètre de type et le "contrainte" est le type que le paramètre de type doit représenter.

Prenons un exemple de classe générique qui accepte un paramètre de type et renvoie la valeur minimale à partir d'un tableau de valeurs. Ici, le code utilise le "où" contrainte pour spécifier que le paramètre de type doit être un type numérique:

Utilisation du système;
classe publique minvalue où t: struct, icomparable, iconvertible

public t getminvalue (t [] array)

if (array == null || array.Longueur == 0)
Jetez une nouvelle argument en conception ("le tableau ne peut pas être nul ou vide");

T min = array [0];
pour (int i = 1; i < array.Length; i++)
if (array [i].Compareto (min) < 0)
min = array [i];


retourne min;


programme de classe publique

public static void main ()

int [] intArray = 1, 2, 3, 4, 5;
Mine intMinValue = new Minvalue();
int intmin = intminvalue.Getminvalue (intarray);
Console.WriteLine ("Valeur minimale de IntArray: 0", intMin);
double [] Doublearray = 1.1, 2.2, 3.3, 4.4, 5.5;
Mine doubbleminValue = new Minvalue();
double doublémin = doublévalue.GetminValue (Doublearray);
Console.WriteLine ("Valeur minimale de Doublearray: 0", doublémin);

Ici, nous avons défini une classe générique «Minvalue» qui accepte un paramètre de type "T" et renvoie la valeur minimale à partir d'un tableau de valeurs. Ensuite, nous avons utilisé le "où" contrainte pour spécifier que le paramètre de type doit être une structure, implémentez l'interface icomparable et implémentez l'interface iconvertible. Cette contrainte garantit que seuls les types numériques sont autorisés sous forme de paramètres de type.

Conclusion

Le "où" La contrainte en C # est une fonctionnalité puissante qui permet aux développeurs d'appliquer la sécurité de type et de prévenir les erreurs pendant l'exécution. En utilisant cette contrainte, vous pouvez spécifier l'ensemble de types qu'un paramètre de type générique peut représenter. Cet article a donné un aperçu du "où" contrainte en C # et démontré comment l'utiliser avec un code.