解释泛型在 C# 中的工作原理

解释泛型在 C# 中的工作原理

泛型是在 C# 2.0 版本中添加的,是该语言中最重要的概念之一。它们使您能够编写在编译时类型安全的可重用、高性能代码。使用泛型,您可以在代码中使用某种类型,而无需事先了解该类型。

泛型在 .NET 中的许多地方使用,包括集合、委托和异步代码。使用泛型,您不需要事先知道集合的大小,并且可以将泛型与任何元素类型一起使用,甚至是特定于您的代码的自定义数据类型。 C# 提供对泛型类型(类、接口等)和泛型方法的支持。

在泛型中,您有类型参数和类型参数。这类似于具有参数的方法,您可以将参数传递给该方法。

泛型类型

声明泛型类型的语法由位于尖括号中的类型参数组成。类型的名称。例如,Locator 是下面示例中的泛型类。

public class Locator { }登录后复制

var stringLocator = new Locator();登录后复制

public class Locator{ public IList Items { get; set; } public T Locate(int index){ return Items[index]; } } var stringLocator = new Locator(); string item = stringLocator.Locate(2);登录后复制

// Error: Cannot implicitly convert type 'string' to 'int' [c-sharp]csharp(CS0029) int item = stringLocator.Locate(2);登录后复制

public class LinkedList : IEnumerable登录后复制