C++中push与push_back有什么不同
這篇文章將為大家詳細講解有關C++中push與push_back有什么不同,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
push_back 方法介紹
vector::void push_back (const value_type& val);
vector::void push_back (value_type&& val);
該函數將一個新的元素加到vector的最后面,位置為當前最后一個元素的下一個元素,新的元素的值是val的拷貝(或者是移動拷貝)
vector 常見方法介紹
(1)vector< 類型 > 標識符 ;
(2)vector< 類型 > 標識符(最大容量) ;
(3)vector< 類型 > 標識符(最大容量,初始所有值);
(4) int i[4] = {12,3,4,5};
vector< 類型 > vi(i , i+2); //得到i索引值為3以后的值 ;
(5)vector< vector<int> > //vi 定義2維的容器;記得一定要有空格,不然可能會報錯
vector<int>line//在使用的時候一定要首先將vi個行進行初始化;
for(inti=0;i<10;i++)
{
vector.push_back(line);
}
vector 定義二維數組,長度可以不預先確定。
(6)C++ vector排序
vector<int>vi; vi.push_back(1); vi.push_back(3); vi.push_back(0); sort(vi.begin(),vi.end());////從小到大 reverse(vi.begin(),vi.end());///從大到小
(7)順序訪問
vector<int>vi;
for(inti=0;i<10;i++)
{
vi.push_back(i);
}
for(inti=0;i<10;i++)///第一種調用方法
{
cout<<vi[i]<<"";
}
for(vector<int>::iteratorit=vi.begin();it!=vi.end();it++)///第二種調用方法
{
cout<<*it<<"";
}
(8)查找
vector<int>vi;
for(inti=0;i<10;i++)
{
vector.push_back(i);
}
vector<int>::interatorit=find(vi.begin(),vi.end(),3);
cout<<*it<<endl;///返回容器內找到值的位置。
(9)使用數組對C++ vector進行初始化
inti[10]={1,2,3,4,5,6,7,78,8};
///第一種
vector<int>vi(i+1,i+3);///從第2個元素到第3個元素
for(vector<int>::interatorit=vi.begin();it!=vi.end();it++)
{
cout<<*it<<"";
}
(10) 結構體的 vector
structtemp
{
public:
stringstr;
public:
intid;
}tmp;
intmain()
{
vector<temp>t;
tempw1;
w1.str="Helloworld";
w1.id=1;
t.push_back(t1);
cout<<w1.str<<","<<w1.id<<endl;
return0;
}
push 函數介紹
stack::push();//在棧頂增加元素 queue::push();//將x接到隊列的末端。
stack與queue常見方法介紹
1、stack
stack 模板類的定義在<stack>頭文件中。
stack 模板類需要兩個模板參數,一個是元素類型,一個容器類型,但只有元素類型是必要的,在不指定容器類型時,默認的容器類型為deque。
定義stack 對象的示例代碼如下:
stack<int> s1;
stack<string> s2;
stack 的基本操作有:
入棧,如例:s.push();在棧頂增加元素
出棧,如例:s.pop();注意,出棧操作只是刪除棧頂元素,并不返回該元素。
訪問棧頂,如例:s.top()
判斷???,如例:s.empty(),當棧空時,返回true。
訪問棧中的元素個數,如例:s.size()。
2、queue
queue 模板類的定義在<queue>頭文件中。
與stack 模板類很相似,queue 模板類也需要兩個模板參數,一個是元素類型,一個容器類型,元素類型是必要的,容器類型是可選的,默認為deque 類型。
定義queue 對象的示例代碼如下:
queue<int> q1;
queue<double> q2;
queue 的基本操作有:
入隊,如例:q.push(x); 將x 接到隊列的末端。
出隊,如例:q.pop(); 彈出隊列的第一個元素,注意,并不會返回被彈出元素的值。
訪問隊首元素,如例:q.front(),即最早被壓入隊列的元素。
訪問隊尾元素,如例:q.back(),即最后被壓入隊列的元素。
判斷隊列空,如例:q.empty(),當隊列空時,返回true。
訪問隊列中的元素個數,如例:q.size()
總結
以上是生活随笔為你收集整理的C++中push与push_back有什么不同的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WPF and Silverlight
- 下一篇: IOS 5 中@synthesize w