国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

深入分析C++中deque的使用

2020-01-26 16:18:39
字體:
來源:轉載
供稿:網友

首先,當考慮到內存分配和執行性能的時候,使用std::deque要比std::vector好。

Deque總覽

deque和vector一樣都是標準模板庫中的內容,deque是雙端隊列,在接口上和vector非常相似,在許多操作的地方可以直接替換。假如讀者已經能夠有效地使用vector容器,下面提供deque的成員函數和操作,進行對比參考。

函數描述
c.assign(beg,end)
c.assign(n,elem) 
將[beg; end)區間中的數據賦值給c。
將n個elem的拷貝賦值給c。
c.at(idx) 傳回索引idx所指的數據,如果idx越界,拋出out_of_range。
c.back() 傳回最后一個數據,不檢查這個數據是否存在。
c.begin() 傳回迭代器重的可一個數據。
c.clear() 移除容器中所有數據。
deque<Elem> c
deque<Elem> c1(c2)
Deque<Elem> c(n)
Deque<Elem> c(n, elem)
Deque<Elem> c(beg,end)
c.~deque<Elem>() 
創建一個空的deque。
復制一個deque。
創建一個deque,含有n個數據,數據均已缺省構造產生。
創建一個含有n個elem拷貝的deque。
創建一個以[beg;end)區間的deque。
銷毀所有數據,釋放內存。
c.empty() 判斷容器是否為空。
c.end() 指向迭代器中的最后一個數據地址。
c.erase(pos)
c.erase(beg,end) 
刪除pos位置的數據,傳回下一個數據的位置。
刪除[beg,end)區間的數據,傳回下一個數據的位置。
c.front() 傳回地一個數據。
get_allocator 使用構造函數返回一個拷貝。
c.insert(pos,elem) 
c.insert(pos,n,elem)
c.insert(pos,beg,end)
在pos位置插入一個elem拷貝,傳回新數據位置。
在pos位置插入>n個elem數據。無返回值。
在pos位置插入在[beg,end)區間的數據。無返回值。
c.max_size() 返回容器中最大數據的數量。
c.pop_back() 刪除最后一個數據。
c.pop_front() 刪除頭部數據。
c.push_back(elem) 在尾部加入一個數據。
c.push_front(elem) 在頭部插入一個數據。
c.rbegin() 傳回一個逆向隊列的第一個數據。
c.rend() 傳回一個逆向隊列的最后一個數據的下一個位置。
c.resize(num) 重新指定隊列的長度。
c.size() 返回容器中實際數據的個數。
C1.swap(c2) 
Swap(c1,c2)
將c1和c2元素互換。
同上操作。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 营山县| 台前县| 买车| 陆良县| 镇巴县| 芮城县| 友谊县| 西乌| 宜兰市| 大兴区| 和静县| 图们市| 留坝县| 镇赉县| 青龙| 竹溪县| 石首市| 开鲁县| 威宁| 兰溪市| 东宁县| 独山县| 莲花县| 安泽县| 潮州市| 阿克陶县| 斗六市| 辽源市| 巴东县| 江阴市| 横峰县| 珠海市| 水城县| 临潭县| 静乐县| 济源市| 松桃| 牙克石市| 廉江市| 蕲春县| 晋城|