尖括号对C#中的类名做了什么?

时间:2014-09-13 10:30:44

标签: c# generics collections

我知道如何使用List<T>作为例子,并决定该集合持有什么。 T进来的地方。但我不确定我是否完全理解括号。

如果我创建一个类......

class MyClass<int> { }

或者代替int我可以使用T或对象或字符串或其他。那是什么意思?它会自动变成一个集合吗?

2 个答案:

答案 0 :(得分:4)

通用类允许类成员使用类型参数。它们的定义方式与泛型方法相同,方法是在类名后面添加一个类型参数。

class Point<T>
{
  public T x, y;
}

要从泛型类中实例化一个对象,使用标准符号,但在两个类名后面都指定了type参数。请注意,与泛型方法相比,必须始终使用显式指定的类型参数实例化泛型类。

Point<short> p = new Point<short>();

参考: http://www.pvtuts.com/csharp/csharp-generics

答案 1 :(得分:1)

T表示类型。如果你使用&#34; MyClass&#34;,MyClass是一个泛型类。更多信息here