1. 程式人生 > 其它 >C++ 標準庫 std::deque 插入元素 push_front() push_back() 的使用

C++ 標準庫 std::deque 插入元素 push_front() push_back() 的使用

技術標籤:# 4.1 C++c++stldequepush_frontpush_back

文章目錄

std::deque::push_front

函式原型:

void push_front (const value_type& val);
void push_front (value_type&& val);

簡介:
在開始處插入元素

將一個新元素插入到雙端佇列容器的開始位置,緊接其當前第一個元素之前。 val的內容被複制(或移動)到插入的元素。

這有效地將容器尺寸增加了一個。

引數:
val:
要複製(或移動)到插入元素的值。

成員型別value_type是容器中元素的型別,在deque中定義為其第一個模板引數(T)的別名。

返回值:

使用容器的分配器分配新元素的儲存,這可能會在失敗時引發異常(對於預設分配器,如果分配請求未成功,則會丟擲bad_alloc)。


std::deque::push_back

函式原型:

void push_back (const value_type& val);
void push_back (value_type&& val);

在末尾新增元素

在雙端佇列容器的當前最後一個元素之後的末尾新增一個新元素。 val的內容被複制(或移動)到新元素。

這有效地將容器尺寸增加了一個。

引數:
val:
要複製(或移動)到新元素的值。

成員型別value_type是容器中元素的型別,在deque中定義為其第一個模板引數(T)的別名。

返回值:

使用容器的分配器分配新元素的儲存,這可能會在失敗時引發異常(對於預設分配器,如果分配請求未成功,則會丟擲bad_alloc)。


#include <iostream>
#include <deque>
#include <algorithm>

using namespace std;

void Print(int& ele)
{
	cout<<
ele<<" "; } void main() { deque<int> D1; D1.push_front(0) ; D1.push_front(1); D1.push_front(2); D1.push_front(3); D1.push_front(4); D1.push_back(1); D1.push_back(2); D1.push_back(3); D1.push_back(4); cout<<"D1:"<<endl; for_each(D1.begin(),D1.end(),Print);//注意觀察元素在序列中的排列位置 cout<<endl; D1[4]=9; cout<<"D1:"<<endl; for_each(D1.begin(),D1.end(),Print);//注意觀察元素在序列中的排列位置 cout<<endl; }

在這裡插入圖片描述