下面是一个实例,抛出一个除以零的异常,并在 catch 块中捕获该异常。
实例
#include<iostream>usingnamespacestd; doubledivision(inta, intb){ if(b == 0) { throw"Division by zero condition!"; } return(a/b);}intmain(){ intx = 50; inty = 0; doublez = 0; try{ z = division(x, y); cout << z << endl; }catch(constchar* msg){ cerr << msg << endl; } return0;}
由于我们抛出了一个类型为 const char* 的异常,因此,当捕获该异常时,我们必须在 catch 块中使用 const char*。当上面的代码被编译和执行时,它会产生下列结果:
Divisionby zero condition!