【发布时间】:2021-06-19 12:43:56
【问题描述】:
以下代码可以编译,但微软的文档似乎根本没有提到这种特定的约束类型。
class TestGenericsBase<T1>
{
public virtual void Method1<T>(T arg)
{
}
}
class TestGenerics : TestGenericsBase<object>
{
public override void Method1<T>(T arg)
where T : default // what does this do?
{
}
}
知道它有什么作用吗?到目前为止,我唯一的线索是它只适用于方法。
【问题讨论】:
-
请注意
where T : default与where T : default(T)和var something = default(T)密切相关。