C++ 标准异常
1,C++标准异常的三个关键字
throw: 当问题出现时,程序会抛出一个异常。这是通过使用 throw 关键字来完成的。
catch: 在您想要处理问题的地方,通过异常处理程序捕获异常。catch 关键字用于捕获异常。
try: try 块中的代码标识将被激活的特定异常。它后面通常跟着一个或多个 catch 块。
例如如下:
#include<iostream>
using namespace std;
int division(int a,int b)
{
if(a == b)
{
throw 1;
}
return a;
}
int main()
{
int a = 1,b = 1;
try
{
division(a,b);
}catch(int e1)
{
cout << e1 << endl;
}
return 0;
}
2,标准异常类型
标准类型如下:
下面举个简单的例子:
#include<iostream>
#include<new>
using namespace std;
class Dog
{
public:
Dog()
{
parr = new int[1000000];//4MB
}
private:
int *parr;
};
int main()
{
Dog *pDog;
try{
for(int i = 1;i <10000 ;i ++)
{
pDog = new Dog();
cout <<"创建成功"<< endl;
}
}
catch(bad_alloc e1)
{
cout << e1.what() << endl;
}
return 0;
}