c++ 예외처리 예제

throw 문을 사용하여 코드 블록 내에서 예외를 throw할 수 있습니다. throw 문의 발단은 예외에 대한 형식을 결정하고 모든 식일 수 있으며 식의 결과 형식은 throw된 예외 의 형식을 결정합니다. 이는 개체당 추가 테스트입니다(쓰기, 기억 또는 잊어버리기). 특히 이러한 하위 개체가 서로 종속되는 경우 여러 개체로 구성된 클래스의 경우 이러한 개체가 매우 지저분해집니다. 자세한 내용은 C++ 프로그래밍 언어 섹션 8.3, 장 14 및 부록 E 또는 (더 학문적인) 논문 예외 안전: 개념 및 기술을 참조하십시오. nAfxDaoError CDaoException::m_nAfxDaoError 아래에 나열된 값 중 하나가 될 수 있는 DAO 확장 오류 코드를 나타내는 정수 값입니다. 오류는 프로그램의 정상적인 실행을 방해합니다. 예외 처리는 시스템의 정상적인 실행을 방해하지 않는 방식으로 오류 및 예외를 처리하는 프로세스입니다. 예를 들어, 사용자가 숫자를 0으로 나누면 컴파일이 성공적으로 컴파일되지만 응용 프로그램이 충돌하기 때문에 예외 또는 런타임 오류가 발생합니다. 이를 방지하기 위해 코드에 예외 처리 기술을 소개합니다. 10) C++에서 예외 처리에 대한 퀴즈를 시도할 수 있습니다. 이 관용구를 사용하면 단일 함수(handleException())를 다시 사용하여 여러 다른 함수에서 예외를 처리할 수 있습니다. cause는 예외의 이유를 나타내는 정수를 지정합니다.

가능한 값 목록은 CArchiveException:m_cause를 참조하십시오. 예외 사양에서 예외를 허용하지 않는 함수에서 전파되는 런타임에 예외가 throw되면 예외가 더 이상 전파되지 않고 대신 RangeException() 함수가 호출됩니다. RangeException() 함수는 반환되지 않지만 예외 사양을 충족하거나 충족하지 않을 수 있는 다른 유형의 예외를 throw하고 예외 처리가 정상적으로 수행되도록 허용할 수 있습니다. 그래도 상황을 복구하지 못하면 프로그램이 종료됩니다. 예외는 모든 플랫폼에서 지원되지 않으며 Throw 메서드는 C. Exception에서 쉽게 이해할 수 없으므로 프로그램의 한 부분에서 다른 부분으로 제어를 전송하는 방법을 제공합니다. C++ 예외 처리는 시도, catch 및 throw라는 세 가지 키워드를 기반으로 합니다. C++의 예외는 C# 및 Java와 같은 언어의 예외와 유사합니다.

try 블록에서 예외가 throw되면 해당 형식이 예외와 일치하는 첫 번째 연결된 catch 블록에 의해 catch됩니다.

Posted in Bez kategorii