Cppreference没有提及std::forward_list::splice_after()
和std::list::splice()
的异常保证。
但是,由于这两个函数仅更改列表节点的指针,因此不需要copy
/ move
任何元素或分配任何内存,恕我直言,它们应为noexcept
他们是noexcept
中的C++11
吗?如果不是,为什么不呢?
答案 0 :(得分:1)
除一个人外,其他人都没有抛出“ ”。标准中遗漏的内容,似乎是一种疏忽。
它们并非无例外,因为它们的合同狭窄。如果您打破了(许多)前提条件,则调试模式实现可能会引发异常。