从deque分配新的自定义对象

Assign new custom object from deque c++

本文关键字:自定义 对象 deque 分配      更新时间:2023-10-16

我现在有:

deque<Job> jobs;
jobs.push_back(Job(1));

Where Job是我创建的一个自定义类(非常简单,只有一个作业编号),我想做的是:

Job currentJob = jobs.pop_front();

然而,这给了我错误。如何将弹出的Job分配给新Job?

引自文档:

空白pop_front ();

删除第一个元素删除deque容器中的第一个元素,有效地将其大小减小1。

这将销毁被删除的元素。

 pop_front()

破坏对象,您可能需要尝试:

Job currentJob = jobs.front();
jobs.pop_front(); //remove the object from container and reduce size by 1

参见std::deque::pop_front。

你想要的是这个

Job currentJob = jobs.front();
jobs.pop_front();