什么是域错误

2024-01-05

在 C++ 中, 有一个“域错误”的基类 std::domain_error。我不明白在什么情况下我应该在代码中抛出域错误。所有其他异常基类都非常不言自明。我很确定 std::domain_error 本身与互联网域名无关,因此请解释域错误是什么类别的错误并提供一些示例。


处理数学函数时都会用到域误差和值域误差。

一方面,函数的域是函数可以接受的值的集合。例如,平方根函数的域是正实数的集合。因此,一个domain_error http://en.cppreference.com/w/cpp/error/domain_error当函数的参数不包含在其域中时抛出异常

另一方面,函数的范围是函数可以返回的值的集合。例如,像这样的函数的范围:

f(x) = -x²

是负实数的集合。那么这有什么意义呢?range_error?如果函数的参数在其定义域内,则结果必须在其范围内,因此我们不应该在范围内出现任何错误...但是,有时该值可以是defined,但不存在可代表的。例如,在 C 中,函数<math.h>如果返回值的大小太大(或太小)而无法表示,则会产生错误

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是域错误 的相关文章