1
<queue>
的位置和推送有什么区别?<queue>的位置和推送之间的区别
这里是关于std::queue::emplace和std::queue::push 的解释。
两种方法都会在当前最后一个元素之后添加元素,返回None
。
<queue>
的位置和推送有什么区别?<queue>的位置和推送之间的区别
这里是关于std::queue::emplace和std::queue::push 的解释。
两种方法都会在当前最后一个元素之后添加元素,返回None
。
push()将已构造对象的副本作为参数添加到quewue中,它将接收队列元素类型的对象。
emplace()在队列末尾就地构造一个新对象。它将队列的元素类型构造函数所需的参数作为参数。
如果您的使用模式是创建新对象并将其添加到容器的模式,则可以使用emplace()快捷键几步(创建临时对象并复制它)。
[push \ _back vs emplace \ _back]可能重复(http://stackoverflow.com/questions/4303513/push-back-vs-emplace-back) – pushkin