編譯器錯誤 CS0451
更新:2007 年 11 月
錯誤訊息
'new()' 條件約束不能和 'struct' 條件約束一起使用
在泛型型別上指定條件約束時,new() 條件約束只能和類別型別條件約束、介面型別條件約束、參考型別條件約束及型別參數條件約束一起使用,而不能和實值型別條件約束一起使用。
範例
下列範例會產生 CS0451。
// CS0451.cs
using System;
public class C4
{
public void F4<T>() where T : struct, new() {} // CS0451
}
// OK
public class C5
{
public void F5<T>() where T : struct {}
}
public class C6
{
public void F6<T>() where T : new() {}
}