C++14 标准定义的 find() 成员函数std::map
如下:
iterator find(const key_type& x);
const_iterator find(const key_type& x) const;
为什么这些函数没有定义为noexcept
?内部可能出现什么问题,需要抛出异常或产生未定义的行为(除了找不到元素,在这种情况下函数返回end
迭代器并且无论如何都不需要抛出异常)?
C++14 标准定义的 find() 成员函数std::map
如下:
iterator find(const key_type& x);
const_iterator find(const key_type& x) const;
为什么这些函数没有定义为noexcept
?内部可能出现什么问题,需要抛出异常或产生未定义的行为(除了找不到元素,在这种情况下函数返回end
迭代器并且无论如何都不需要抛出异常)?