閱讀英文

共用方式為


編譯器錯誤 CS0451

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() {}  
}