C ++ Stack push()函數(shù)用于在堆棧頂部添加新元素。如果我們有一個(gè)類型為stack的數(shù)組,并且通過(guò)使用push()函數(shù),我們可以在堆棧中插入新元素。元素將插入到堆棧的頂部。隨著堆棧遵循LIFO原理,最開(kāi)始插入的元素將在末尾刪除,反之亦然,因?yàn)槎褩W裱筮M(jìn)先出原則。
void push (const value_type& value);
value:該參數(shù)表示元素被初始化為的值。該參數(shù)指定新插入的元素的值。函數(shù)執(zhí)行后,元素“ val”成為堆棧中新的頂層元素。
該函數(shù)僅插入元素,不返回任何值。該函數(shù)的返回類型可以認(rèn)為是無(wú)效的。
//該程序用于通過(guò)插入簡(jiǎn)單的整數(shù)值來(lái)演示堆棧的push()函數(shù)的使用。
#include <iostream> #include <stack> using namespace std; int main() { stack<int> newstack; for(int j= 0; j<5; j++) newstack.push(j); cout << "從堆棧中彈出元素......"; while (!newstack.empty () ) { cout<<" " << newstack.top (); newstack.pop(); } cout<<"\n"; return 0; }
輸出:
從堆棧中彈出元素..... 4 3 2 1 0
#include <iostream> #include <stack> using namespace std; int main() { stack<int> newstack; newstack.push(69); newstack.push(79); newstack.push(80); while (!newstack.empty()) { cout<<" " << newstack.top (); newstack.pop(); } return 0; }
輸出:
90 85 80 79 69
//該程序用于通過(guò)插入簡(jiǎn)單的整數(shù)值來(lái)演示堆棧的push()函數(shù)的使用。
#include <iostream> #include <stack> using namespace std; int main() { stack<int> newstack; newstack.push(11); newstack.push(22); newstack.push(33); newstack.push(44); cout << "彈出元素..."; newstack.pop(); newstack.pop(); while (!newstack.empty () ) { cout << " " << newstack.top(); newstack.pop(); } cout<<'\n'; return 0; }
輸出:
彈出元素... 22 11
//該程序用于通過(guò)插入簡(jiǎn)單的整數(shù)值來(lái)演示堆棧的push()函數(shù)的使用。
#include <iostream> #include <stack> using namespace std; int main() { stack<int> a,b; a.push(5); a.push(8); a.push(50); b.push(132); b.push(45); cout<<"a的大小: "<<a.size(); cout<<"\n b的大小:" <<b.size(); return 0; }
輸出:
a的大小: 3 b的大小:2
一個(gè)調(diào)用對(duì)底層容器進(jìn)行回推,這對(duì)于完成元素上的插入操作是必要的。
對(duì)容器和包含的元素進(jìn)行修改。添加一個(gè)新元素將修改所有底層堆棧元素。
提供與在底層容器對(duì)象上執(zhí)行的操作等效的保證。