CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): shamin (S Kim)
날 짜 (Date): 2003년 6월  4일 수요일 오전 12시 31분 50초
제 목(Title): Re: c++ exception handling (윈도, 유닉스


 division과 modulus 연산시에 두 번째 피연산자에 0이 오면 
 예측할 수 있는 결과를 얻지 못합니다.

 C++ 언어의 정의에 의해 "예측되지 못하는 행동이 유발됨"이 
 보장됩니다. :) 이 연산의 결과가 정의되지 못하는 것은 
 C 언어에서도 마찮가지죠.

 자하랑님 말씀대로 Division 연산을 수행하는 연산자 중복정의
 혹은 함수의 사용으로 직접 두 번째 피연산자를 검사하여
 예외를 던져주시면 되겠습니다.

 예를 들면 다음과 같은 형식의...

 class division_by_zero;

 template<typename T>
 T division(T op1, T op2) throw( division_by_zero );

--
S Kim
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.