Share via


deque Class

標準樣板程式庫 (STL) 的順序容器 deque 將排列給定型別的項目,以線性的排列方式,而且像向量,讓任何項目,並有效插入及刪除容器後面的快速隨機存取。 不過,與不同的向量,是 deque 類別也支援高效率的插入或刪除中最前面的容器。

template <
   class Type, 
   class Allocator=allocator<Type> 
>
   class deque

參數

  • Type
    若要儲存在 deque 元素資料型別。

  • Allocator
    表示會封裝有關 deque 的配置及解除配置記憶體的詳細資料的預存的配置器物件的型別。 此引數是選擇性的且預設值是配置器 <Type>.

備註

容器類型的選擇應該根據一般的搜尋類型,並插入所需的應用程式。 向量應該是慣用的容器時可以用於管理一系列是有代價的隨機存取的任何項目,並插入或刪除的項目是只需要在序列結尾處。 效能的清單時有效的插入與刪除動作序列中的任何位置 (以固定的時間) 非常寶貴,容器是更好。 這類的作業順序的需要項目的複本與工作分派的序列 (線性時間) 中的元素數目成正比。

當成員函式必須插入或清除序列的項目時,就會發生 Deque 重新配置:

  • 如果項目會被插入到空的時序,或如果項目會保留空的時序清除,然後 iterator 稍早所傳回開始結束會變成無效。

  • 如果項目會插入 deque,那麼所有的 iterator,第一個位置,但是沒有參考,以指定現有的項目變成無效。

  • 如果項目會插入在 deque,最後再結束和所有的 iterator,但沒有參考,以指定現有的項目變成無效。

  • 如果項目會清除最前面的 deque,只 iterator,並刪除項目的參考都會變成無效。

  • 如果最後一個項目會清除從 deque 的結尾,只有該的最後一個元素的 iterator,並刪除項目的參考都會變成無效。

否則,插入或刪除項目失效所有 iterator 和參考。

22a9t119.collapse_all(zh-tw,VS.110).gif建構函式

deque

建構deque.數建構函式可供您設定的新內容deque不同的方式: 空的。 載入,並指定數個空項目。 內容移動或複製來自另一個deque。 內容複製或移動使用 iterator ; 和一個項目複製到deque_Count次。 有些建構函式可使用自訂的allocator可建立項目。

22a9t119.collapse_all(zh-tw,VS.110).gifTypedef

allocator_type

表示的型別allocator類別的deque物件。

const_iterator

存取和讀取項目中的型別提供隨機存取 iterator, deque做為const

const_pointer

提供型別,變數的指標中的項目, deque ,const.

const_reference

提供的項目中參考的型別deque的讀取和其他動作顯示為const.

const_reverse_iterator

存取和讀取項目中的型別提供隨機存取 iterator, deque與const。 反序檢視 deque。 如需詳細資訊,請參閱reverse_iterator Class

difference_type

提供型別,在同一個項目,請參閱的兩個隨機存取 iterator 之間的差異deque

Iterator

提供隨機存取 iterator 的型別可以讀取或修改任何項目,在deque

pointer

提供型別,變數的指標中的項目, deque

參考

提供儲存在中的項目參考的型別deque

reverse_iterator

提供隨機存取 iterator 的型別可以讀取或修改中的項目deque。 Deque 會以相反順序檢視。

size_type

計算中的元素數目之型別的deque

value_type

儲存在中的資料型別表示的型別deque

22a9t119.collapse_all(zh-tw,VS.110).gif成員函式

assign

清除項目從deque ,並將新序列的項目複製到目標deque

at

傳回指定位置處的項目參考deque

back

傳回最後一個項目參考deque

begin

隨機存取 iterator 定址中的第一個項目會傳回deque

deque::cbegin

中的第一個項目會回到 const 的 iterator deque

deque::cend

傳回隨機存取const iterator 指向結尾之外,只是deque

clear

會清除所有項目deque

deque::crbegin

中的第一個項目會傳回隨機存取的 const iterator deque檢視以相反順序。

deque::crend

中的第一個項目會傳回隨機存取的 const iterator deque檢視以相反順序。

deque::emplace

插入項目建構為就地deque中指定的位置。

deque::emplace_back

新增項目結尾的地方,以建構deque

deque::emplace_front

將元素建構在開頭的地方加入deque

empty

傳回true如果deque包含零個項目,以及false如果它包含一或多個項目。

end

傳回隨機存取 iterator 那些點結尾之外,只是deque

清除

移除項目或一系列中的項目deque從指定的位置。

front

傳回的參照中的第一個項目deque

get_allocator

傳回一份allocator物件,用來建構deque

插入

插入項目、 幾個項目或一系列元素插入deque中指定的位置。

max_size

傳回的可能長度上限deque

pop_back

清除的結尾處的項目deque

pop_front

清除的開始處的項目deque

push_back

將元素加入至結尾的deque

push_front

將元素加入至起始處deque

rbegin

回到第一個項目,在已還原的隨機存取 iterator deque

rend

傳回隨機存取 iterator 那些點只是超出最後一個項目反轉deque

resize

指定新的大小,如deque

deque::shrink_to_fit

丟棄額外的容量。

size

傳回數字中的項目deque

交換

交換兩個項目deques。

22a9t119.collapse_all(zh-tw,VS.110).gif運算子

operator[]

傳回參考deque的指定位置的項目。

deque::operator=

取代的項目deque與另一份deque

需求

標頭: <deque>

請參閱

參考

在標準 C++ 程式庫中的執行緒安全

標準樣板程式庫

其他資源

<deque> 成員

deque 類別成員