有一个C++函数(不是VC),里面有很多算法,运行时有可能出现溢出(如分母为零,求绝对值大于1的反三角函数asin等)的情况,我希望溢出时能给出提示,我试过try-catch(…),但好象不好用,谁能帮我解决这个问题?能做个试验吗?谢谢!
例如:
function(double a,double b,double c,)
{
try
…
c=a/b; //b可能为零
...
}
catch(…)
确实如楼上所说的,如果变量类型为double时,异常是捕获不到的,只有变量类型为整数,异常可以捕获的.哪位老大可以详细解释一下为什么? 我也不懂为什么会这样?
原来的函数不去throw exception的话你当然catch不到有用的信息了。
double a,double b,double c;c=a/b;那是不是只有除之前自己进行判断b是否等于零,否则就没有其它办法?
这是软件的可靠性问题,我认为C++已经很成熟了,应该有相应的解决办法,只是我现在不知道.哪位高手如果知道不妨赐教.能把解决的方法发上来吗?谢谢!