C++에서 예외 발생
C++ throw
예외는 오류 및 예기치 않은 이벤트를 처리하는 데 사용할 수 있는 C++의 강력한 기능입니다. 주로 프로그램의 실행을 종료하거나 프로그램의 다른 부분으로 제어를 이전하는 데 사용됩니다.
C++에서 예외 발생
C++ 예외는 잘못된 인수, 0으로 나누기 등과 같은 예외적인 상황에 의해 생성됩니다. 컴파일러는 컴파일 타임에 감지한 모든 오류에 대해 예외를 생성할 수 있습니다.
그러나 프로그래머는 코드에서 throw
키워드를 사용하여 예외를 만들 수도 있습니다.
throw
외에도 catch
및 try
키워드가 있습니다.
Catch
- 코드는 문제를 해결해야 하는 코드의 지점에서 예외 처리기를 사용하여 예외를 포착합니다.catch
키워드는 예외가 포착되었음을 나타냅니다.try
-try
블록은 특정 예외가 트리거될 코드 섹션을 나타냅니다. 하나 이상의catch
블록이 뒤에 옵니다.
메서드는 블록이 예외를 발생시킨다고 가정하고 try
및 catch
키워드를 결합하여 예외를 캡처합니다. try/catch
블록은 오류를 발생시킬 수 있는 코드를 캡슐화합니다.
C++에서 예외를 사용하는 목적
예외는 C++에서 오류를 처리하는 방법입니다. 코드를 보다 효율적이고 유지 관리 가능하며 견고하게 만드는 데 사용됩니다.
예외를 통해 프로그래머는 단순히 오류 코드나 상태 코드를 반환하는 것보다 더 체계적으로 오류를 처리할 수 있습니다. 예외 메커니즘은 유연하게 설계되었으며 프로그램 실행 중에 발생할 수 있는 오류를 처리하는 데 사용할 수 있습니다.
예외의 일반적인 용도는 다음과 같습니다.
- 유효하지 않은 입력 매개변수 감지
- 유효하지 않은 데이터 구조 감지
- I/O 오류 처리
- 메모리 할당 실패 처리 등
C++ throw
예외 사용
이 섹션에서는 C++ throw
예외 사용에 대한 가이드를 제공합니다.
- C++
throw
예외를 사용하는 첫 번째 단계는 클래스를 만드는 것입니다. - 두 번째 단계는 클래스의 생성자를 만드는 것입니다. 이는 클래스의 변수를 초기화하는 데 사용되며 이 클래스에서 개체를 만들 때도 사용됩니다.
- 생성자를 호출한 다음 메서드를 호출하여 이 클래스의 개체를 만듭니다. 코드에 오류가 있으면 이 메서드는 예외를 발생시키고 일부 정보를 출력합니다.
위에서 언급한 단계를 사용하여 예를 살펴보겠습니다.
#include <iostream>
using namespace std;
double division(int a, int t) {
if (t == 0) {
throw "You are dividing with number 0 that makes impoosible to execute the operation ";
}
return (a / t);
}
int main() {
int x = 4;
int y = 0;
double z = 4;
try {
z = division(x, y);
cout << z << endl;
} catch (const char* msg) {
cerr << msg << endl;
}
return 0;
}
위에서 언급한 코드의 작동을 확인하려면 여기를 클릭하십시오.
Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.
Facebook