使用throw抛出异常
时间: 2024-02-21 10:33:03 浏览: 69
throw关键字用于在代码块中抛出异常。语法格式如下:
throw expression;
其中,expression是要抛出的异常对象。
例如,我们可以使用throw关键字在一个函数中抛出一个自定义的异常:
```cpp
#include <iostream>
#include <string>
using namespace std;
class MyException {
public:
MyException(const string& message) : message_(message) {}
const string& what() const {
return message_;
}
private:
string message_;
};
void myFunction(int value) {
if (value < 0) {
throw MyException("Value must be positive");
}
// other code here
}
int main() {
try {
myFunction(-1);
}
catch (const MyException& e) {
cout << "Caught exception: " << e.what() << endl;
}
return 0;
}
```
在上面的示例中,如果myFunction的参数value小于0,则会抛出一个MyException异常。在main函数中,我们使用try-catch块来捕获并处理该异常。如果发生异常,程序将输出"Caught exception: Value must be positive"。
阅读全文