我对C#generics相当新,我想知道一些事情是如何工作的.
如果我有这个:
public class Foo<T>
Run Code Online (Sandbox Code Playgroud)
在我的课上我有一个GetType方法,它只返回T的类型.我该怎么做才能使我的方法能够使用T.
public string GetType();
{
return T.GetType().ToString();
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试学习一个简单的例子来帮助我理解.
谢谢.
public string GetTypeName()
{
return typeof(T).ToString();
}
Run Code Online (Sandbox Code Playgroud)
T它不是某个实例,它是实际的类型参数.同样你不能说String.GetType(),但你可以说typeof(String).通常,您可以调用GetType()实例和typeof(something)类型.
此外,我已将您的GetType方法重命名为GetTypeName因为方法GetType是在object类型上声明的,因此如果您尝试使用它,编译器会抱怨.
还有一件事:分号在方法体之前是非法的,所以我把它删除了.
| 归档时间: |
|
| 查看次数: |
110 次 |
| 最近记录: |