为什么 deque 的 pop_front() 和 pop_back() 不是 noexcept?

Why are deque's pop_front() and pop_back() not noexcept?

在 C++11 及更高版本中,std::dequepop_front()pop_back() 不是 noexcept 有什么原因吗?或者只是被遗忘了?

如果我没理解错的话,该标准没有指定 noexcept 具有狭窄契约的函数(具有违反导致 UB 的先决条件)。 N3279 and more recently P0884 正在谈论这个以及如何决定一个函数是否应该 noexcept(或有条件地)。

std::dequepop_frontpop_back 以及 frontback 都没有调用析构函数.例如 std::vectorpop_backfrontback