Checked, Unchecked

-- C# 2011. 7. 11. 10:36
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

기본적으로 닷넷 실행환경은 오버플로우(Overflow)에 대해 예외를 발생시키지 않도록 되어 있다.
대신 MSB(최상위비트)가 무시되어 의도하지 않은 값이 나오거나 초기값이 리턴된다. (unchecked 상태)
결과적으로 개발자가 의도하지 않은 값이 도출될 수 있어 특히나 수에 민감한 프로그램에서는 주의가 필요하다.

checked는 이러한 오버플로우를 검사하여 예외를 발생시키는 역할을 한다.

byte b = byte.MaxValue; // 최대값 255

checked
{
    b = (byte)(b + 100); // 오버플로우 예외발생 (System.OverflowException)
}

"VisualStudio > 프로젝트 속성 > 빌드 > 고급창"에서 "산술 연산 오버플로/언더플로 확인"을 체크하면 기본 Unchecked상태를 Checked상태로 변경할 수 있다.

참고 :  http://cafe.naver.com/cstudyjava.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=4459&

'-- C#' 카테고리의 다른 글

How to Initialize Hosted WCF Services  (0) 2012.07.18
WCF Restful WebService  (0) 2012.06.21
Partial class  (0) 2011.07.08
Sealed Class  (0) 2011.07.08
Using The C# WebClient class to upload and download FTP files  (0) 2011.06.29
posted by 어린왕자악꿍