C++/STL/Deque
< C++
<deque> 是b:C++標準程式庫中的一個b:頭文件,定義了b:C++標準中雙端隊列容器的類模板。 用於需要隨機訪問,能在隊列的頭部與尾部方便地刪除、插入元素。
模板類
編輯template < class T, class Alloc = allocator<T> > class deque;
成員類型
編輯成員類型 | 定義 | 註釋 |
---|---|---|
value_type | 第一個模板參數(T) | |
allocator_type | 第二個模板參數(Alloc) | 缺省allocator<value_type> |
reference | value_type& | |
const_reference | const value_type& | |
pointer | allocator_traits<allocator_type>::pointer | 對於缺省分配器為value_type* |
const_pointer | allocator_traits<allocator_type>::const_pointer | 對於缺省分配器為const value_type* |
iterator | 指向value_type的前向迭代器 | 可轉換為const_iterator |
const_iterator | 指向const value_type的前向迭代器 | |
difference_typ | 有符號的整形,即iterator_traits<iterator>::difference_type | 通常為 ptrdiff_t |
size_type | 可表示difference_type的任何非負值的無符號整形 | 通常為size_t |
const_reverse_iterator | ||
reverse_iterator |
成員函數
編輯- (constructor) 構造函數
- (destructor) 析構函數
- operator= 拷貝賦值運算符、移動賦值運算符、初始化器運算符
- 迭代器
- begin 返回指向開始位置的迭代器
- end 返回指向結束位置的迭代器
- cbegin 返回指向開始位置的const迭代器
- cend 返回指向結束位置的const迭代器
- crbegin
- crend
- rbegin
- rend
- 容量Capacity
- empty 測試容器是否為空
- max_size 返回容器的可能允許的最大容量
- 成員訪問(Element access)
- at
- front 返回第一個成員的引用
- back 返回最後一個成員的引用
- 修改器(Modifier)
- assign 賦值替換全部內容
- emplace
- emplace_back 在當前位置的尾方向原位插入元素
- emplace_front 在鍊表頭部原位構造新的成員並插入到鍊表最開始處
- push_front 在鍊表頭部插入元素,使用拷貝語義或移動語義
- pop_front 刪除鍊表頭部元素
- push_back
- pop_back
- erase
- swap 交換兩個鍊表的內容
- resize 改變鍊表的容量
- shrink_to_fit
- clear 清空鍊表的內容
- insert
- 觀察器(Observer)
- get_allocator 獲取當前的分配器
重載的非成員函數模板
編輯- 比較兩個前向鍊表的關係運算符函數模板
- bool operator==(lhs, rhs),兩個鍊表的對應成員兩兩比較
- bool operator!=(lhs, rhs)
- bool operator<(lhs, rhs),兩個鍊表的對應成員做詞典(lexicographical)比較
- bool operator>(lhs, rhs)
- bool operator<=(lhs, rhs)
- bool operator>=(lhs, rhs)
- swap (lhs, rhs)
參考文獻
編輯頁面Template:ReflistH/styles.css沒有內容。