컴파일러 오류 CS0451
업데이트: 2007년 11월
오류 메시지
'new()' 제약 조건은 'struct' 제약 조건과 함께 사용할 수 없습니다.
The 'new()' constraint cannot be used with the 'struct' constraint
제네릭 형식에 제약 조건을 지정하는 경우 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() {}
}