2013-05-02 70 views
1

分配新的自定義對象我目前有:從雙端隊列C++

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

在哪裏工作是我做了一個自定義類(很簡單,只是有一個工號),和我想要做的是以下幾點:

Job currentJob = jobs.pop_front(); 

但是,這給了我錯誤。如何完成將彈出的作業分配給新作業?

+0

請包括一些錯誤信息。 – 2013-05-02 23:27:44

+0

'pop_front()'是一個無效函數 – tianz 2013-05-02 23:29:32

+0

您是否試圖給列表中的一個銷燬對象分配一個Job值?這是不可能的,是嗎? – 2013-05-02 23:29:49

回答

7

從文檔引用:

空隙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

1

你想這是什麼

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