C ++堆栈pop()函数用于删除堆栈的最高元素。此函数执行删除操作。堆栈中的删除是从顶部开始的。首先删除最近插入的元素。堆栈遵循LIFO原则,即后进先出,因此弹出操作遵循上述顺序。
void pop()
该函数不带参数,仅用于删除顶部元素。同样,由于堆栈遵循LIFO原则,因此我们不需要指定要删除的元素,因为默认情况下,最顶部的元素将被首先删除。
该函数仅用于从堆栈中删除元素,并且没有返回值。因此,我们可以说该函数的返回类型为void。
//该程序用于通过插入简单的整数值来演示堆栈的pop()函数的用法。
#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
//该程序用于通过插入简单的整数值来演示堆栈的pop()函数的用法。
#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
//该程序用于通过插入简单的整数值来演示堆栈的pop()函数的用法。
#include <iostream> #include <stack> using namespace std; int main() { stack<int> newstack; newstack.push(69); newstack.push(79); newstack.push(80); newstack.push(85); newstack.push(90); while (!newstack.empty () ) { cout<< " " << newstack.top (); newstack.pop(); } return 0; }
输出:
90 85 80 79 69
该函数的复杂度是恒定的,该函数仅在堆栈的顶部执行弹出或删除操作,而不会增加任何复杂性。
对容器和其中包含的元素进行了修改。通过删除操作,将变化反映在顶部位置的元素上,顶部位置向下移动一个单位。可以证明为top = top--。
提供与在底层容器对象上执行的操作等效的保证。