【发布时间】:2013-07-17 15:17:55
【问题描述】:
我有一个方法:
public HttpRequestMessage CreateRequest<T>(T genericObject = default(T))
{
...
if (!Equals(genericObject, default(T)))
...
}
我可以这样称呼它:
var request = CreateRequest<int>();
鉴于我实际上并没有使用默认类型(我希望它默认设置为 null),当我调用时如何停止将泛型类型定义为 int(或任何其他类型)方法?
编辑 关键是,我通常确实需要指定类型并使用参数。但是有时我不需要使用参数,我希望将其设置为 Null 或零,而不是在上面的示例中编写像“int”这样的随机类型
【问题讨论】:
-
真的不清楚你的意思 - 编译器需要 一些 指示
T应该是什么... -
null不是类型。您将需要指定您希望该方法返回的内容或编写具有某种返回类型的非泛型方法。
标签: c# generics methods arguments default