本文介绍了捕获int的异常除以0的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
最近我正在尝试使用C ++编写的简单异常程序,如下所示:-
Recently i was trying a simple exception program in C++ which goes like this:-
#include <iostream>
#include <exception>
#include <stdexcept>
using namespace std;
int main()
{
int x=5, y=0;
try
{
int z=x/y;
cout<<"z="<<z;
}
catch (exception& e)
{
cout<<"exception caught: "<<e.what();
}
return 0;
}
为什么这里没有异常?代码有什么问题?
我也想知道为什么需要&
来捕获异常?
Why is no exception thrown here ? What is wrong in the code ?Also I would like to know why the &
is required to catch exception ?
推荐答案
在标准C ++中,除以零的任何整数都不是例外。
Any integer when divided by zero is not an exception in standard C++.
C ++ 5.6节指出:
The section 5.6 of C++ states:
您可能还会发现阅读以下内容很有趣:
You may also find it interesting to read this:
这篇关于捕获int的异常除以0的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!