共用方式為


編譯器錯誤 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() {}
}