【发布时间】:2021-10-07 00:27:37
【问题描述】:
在 C++11 或更高版本中,可以通过std::move() 有效地将一个std:queue 实例的所有内容传输到另一个std::queue 实例。然而,我正在使用的系统只有 C++98。如何在 C++98 中(高效地)执行相同的操作?
【问题讨论】:
-
std::swap也许。 -
嗨@SM,std::queue::swap 我认为是C++11? en.cppreference.com/w/cpp/container/queue/swap
-
嗨@SM,将使用 C++98 的 std::swap() 与 C++11 的 std::move() 或 std::queue::swap() 一样省时?
-
不确定它是否可用于 C++98 中的 std::queue,我假设它是可用的,因为它可用于 std::deque,而 std::queue 是 std::queue 的适配器::双端队列。是的,就像移动一样快。