是否定义了标准库异常引发的消息?

时间:2018-11-17 11:20:09

标签: c++ exception c++-standard-library

如果请求的值不在容器范围内,则

UIDynamicAnimation抛出UITextView

std::vector::at的构造函数需要一个字符串,在捕获异常时可以通过std::out_of_range对其进行访问。

但是我从未见过任何有关该消息中实际内容的文章。出于至少两个原因,这可能很有用:

  • 我可能想向用户显示此消息,例如在启用调试选项的情况下运行。那么最好知道长度,语言,字符集等是否有限制。
  • 如果与标准容器足够相似,我可能想在自己的类中使用std::out_of_range,并返回一条与标准库中使用的格式相符的消息。

这是标准中定义的吗?如果不是,是否定义为

1 个答案:

答案 0 :(得分:2)

我搜索了n4659(早期的c ++ 17草案)。

根本没有引用标准库抛出的用于初始化这些异常的字符串。

虽然我怀疑在所有实现中它们都可以:

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4659.pdf