Maison >développement back-end >C++ >Types génériques ouverts ou fermés dans .NET : quelle est la différence ?

Types génériques ouverts ou fermés dans .NET : quelle est la différence ?

DDD
DDDoriginal
2025-01-17 00:10:12479parcourir

Open vs. Closed Generic Types in .NET: What's the Difference?

Types génériques ouverts et types génériques fermés dans .NET : quelle est la différence ?

Dans .NET, un type générique fait référence à une classe, une interface ou un délégué qui définit des paramètres de type, tels que List<T> ou Dictionary<TKey, TValue>. Un type générique ouvert est un type générique dans lequel un ou plusieurs paramètres de type ne sont pas spécifiés. Un type générique fermé est un type générique dont les paramètres de type sont spécifiés.

Exemple

Considérez les types génériques suivants :

  • T : Ouvrir le type générique
  • List<T> : Ouvrir le type générique
  • Dictionary<string, T> : Ouvrir le type générique
  • List<int> : type générique fermé
  • Dictionary<string, int> : type générique fermé

Type générique non lié

Un type générique non lié est un cas particulier d'un type générique ouvert dans lequel tous les paramètres de type ne sont pas spécifiés. Ces types ne peuvent être utilisés que dans certains contextes, comme la réflexion. Des exemples de types génériques non liés incluent List et Dictionary.

Concepts associés

Le terme « type générique ouvert » n'est pas couramment utilisé. Au lieu de cela, vous pouvez rencontrer les termes suivants :

  • Paramètres de type : Espace réservé pour un type spécifique.
  • Définition du type générique : Type générique non lié.
  • Type construit : Type générique lié.

Remarque : Il est important de comprendre que les types génériques ouverts ne peuvent pas être instanciés directement. Les paramètres de type doivent d’abord être spécifiés pour créer un type générique fermé.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn