每当仅设置全局变量errno
的某些值时,我就需要能够全局停止执行C ++代码(更具体地说,我只对域错误{{1 }}。
我已经看到EDOM
库允许使用常数math_errhandling
以便针对每种数学错误自动引发错误。
对于我来说,我有兴趣针对代码中发生的每个域错误自动提高MATH_ERREXCEPT
。
但是,我的代码已经可以自行处理某些数学错误类型,例如零除错误。因此,FE_INVALID
的自动升高将是完全不希望的。
是否有一种实用的方法可以使用FE_DIVBYZERO
或任何其他C ++库来实现这种局部异常引发?或者,如何通过检查math_errhandling
的值来独自实现异常引发?