我正在阅读
std::queue
,我想知道为什么没有方法可以通过一次操作有效地插入多个元素,而
std::deque
提供
std::deque::insert
? 最佳答案 插入物允许插入结构中的任意位置.
std :: queue是FIFO结构的抽象接口.你只能添加东西到最后.底层结构不一定具有插入任意位置的有效方式(例如,考虑std :: vector).因此std :: queue没有通用的插入成员函数.
由于通用插入函数需要迭代器位置参数,因此为方便起见提供了多插入,因此您不必跟踪下一个迭代器位置.推回不需要这个,因为不需要迭代器跟踪,并且一个简单的循环就足够了.