我想知道,对于类型化构造函数缺少通用类类型约束的原因是什么?例如
public class MyClass<T>
where T : new(int)
{
public T Create(int i)
{
return new T(i);
}
}
尽管如此,这可能很容易(尽管IMO丑陋)被绕过(通过lambda-ctor),但我可以想象没有任何情况,这种约束可能会导致任何实际的麻烦或歧义。
请注意,这是一个语言结构问题,而不是特定问题。
答案 0 :(得分:1)
我搜索了一下,找到了答案。但由于它在这里,我不想复制它,我只会发布一个链接。这是Eric Lippert的回答。我希望他的回答对你意味着什么。
这是一个有点长的问题,但你可以跳过它并只阅读链接的答案。