【发布时间】:2011-09-20 01:43:55
【问题描述】:
谈到泛型类型时,Foo<T>、T 在 .NET @ 中称为泛型类型Foo 的泛型参数 或类型参数 987654324@ 文档。
现在,当我处理int? 或Nullable<Bar> 之类的类型时,在描述该类型时如何引用泛型参数(即在我的示例中为int 或Bar)?
我将其称为可空类型的基类型,但基类型通常用于在描述类层次结构时引用父类。 .所以我觉得在这里谈论基本类型是不对的。并且使用可空类型的术语通用参数让我感觉很笼统。
那么您如何谈论这些类型?
更具体地说,您将如何命名此扩展方法:
public static System.Type GetXxxType(this System.Type type)
{
if ((type.IsGenericType) &&
(type.GetGenericTypeDefinition () == typeof (System.Nullable<>)))
{
return type.GetGenericArguments ()[0];
}
else
{
return null;
}
}
当传递Nullable<T> 时,此方法返回typeof(T) 作为结果。
【问题讨论】:
标签: c# naming-conventions terminology nullable