컴파일러 오류 CS0031
업데이트: 2007년 11월
오류 메시지
'value' 상수 값은 'type'(으)로 변환할 수 없습니다. 재정의하려면 'unchecked' 구문을 사용하십시오.
Constant value 'value' cannot be converted to a 'type'. (use 'unchecked' syntax to override)
값을 저장할 수 없는 형식의 변수에 값을 할당하려고 했습니다. 자세한 내용은 형식(C# 프로그래밍 가이드)을 참조하십시오.
다음 샘플에서는 checked 및 unchecked 컨텍스트 모두에서 CS0031이 발생합니다.
// CS0031.cs
namespace CS0031
{
public class a
{
public static void Main()
{
int num = (int)2147483648M; //CS0031
// Try using a larger numeric type instead:
// long num = (long)2147483648M; //CS0031
const decimal d = -10M; // Decimal literal
unchecked
{
const byte b = (byte)d; // CS0031
// For small values try using a signed byte instead:
// const sbyte b = (sbyte)d;
}
}
}
}