在C++中,处理异常情况的一种方法是使用异常处理机制
<exception>
或<stdexcept>
头文件以使用标准异常类。#include<iostream>
#include <stdexcept>
Division
的类,该类有一个名为execute
的方法,该方法接受两个参数并返回它们的除法结果。class Division {
public:
double execute(double a, double b) {
if (b == 0) {
throw std::invalid_argument("除数不能为零");
}
return a / b;
}
};
在这个例子中,当除数为零时,我们抛出一个std::invalid_argument
异常。
int main() {
Division division;
try {
double result = division.execute(10, 0);
std::cout << "结果: "<< result<< std::endl;
} catch (const std::invalid_argument& e) {
std::cerr << "发生异常: " << e.what()<< std::endl;
}
return 0;
}
在这个例子中,我们使用try-catch语句捕获std::invalid_argument
异常。如果发生异常,我们将打印异常信息。否则,我们将打印除法操作的结果。
注意:在实际编程中,你可能需要根据具体情况选择更合适的异常类型。例如,如果你的方法需要处理文件操作,那么你可能会抛出std::ifstream::failure
异常。