/checked(정수 연산 검사) (C# 컴파일러 옵션)
업데이트: 2007년 11월
/checked 옵션을 사용하면 checked 또는 unchecked 키워드 범위에 없으며 결과가 데이터 형식 범위 밖의 값이 되는 정수 연산문에서 런타임 예외를 발생시킬지 여부를 지정할 수 있습니다.
/checked[+ | <U>-</U>]
설명
checked 또는 unchecked 키워드 범위에 있는 정수 연산문은 /checked 옵션에 영향을 받지 않습니다.
checked 또는 unchecked 키워드 범위에 있지 않는 정수 연산문이 데이터 형식 범위 밖의 결과 값을 반환하는 경우 컴파일할 때 **/checked+ (/checked)**를 사용하면 해당 문은 런타임에 예외를 발생시킵니다. /checked-가 컴파일에 사용되면 해당 문은 런타임에 예외를 발생시키지 않습니다.
이 옵션의 기본값은 /checked-이므로 옵션을 모두 생략해도 동일한 결과를 얻습니다. /checked- 사용에 관한 시나리오 중 하나는 큰 응용 프로그램을 빌드하는 경우입니다. 큰 응용 프로그램을 빌드할 때 자동화된 도구가 사용되기도 하며 그러한 도구에서 /checked를 자동으로 +로 설정할 수도 있습니다. 그럴 경우 /checked-를 지정하여 전역 기본값을 재정의할 수 있습니다.
Visual Studio 개발 환경에서 이 컴파일러 옵션을 설정하려면
프로젝트의 속성 페이지를 엽니다. 자세한 내용은 방법: 빌드 속성 설정(C#)을 참조하십시오.
빌드 속성 페이지를 클릭합니다.
고급 단추를 클릭합니다.
산술 연산 오버플로/언더플로 확인 속성을 수정합니다.
프로그래밍 방식으로 이 컴파일러 옵션을 설정하려면 CheckForOverflowUnderflow를 참조하십시오.
예제
t2.cs를 컴파일합니다. 또한, checked 또는 unchecked 키워드 범위에 있지 않으며 데이터 형식 범위 밖의 결과 값을 반환하는 정수 연산문에서 런타임에 예외가 발생되도록 지정합니다.
csc t2.cs /checked