C++ 栈库 - push() 函数



描述

C++ 函数std::stack::push()通过执行移动操作将新元素插入到栈顶。此操作将栈的大小增加一。

声明

以下是来自 std::stack 头文件的 std::stack::push() 函数的声明。

C++11

void push (value_type&& val);

参数

val - 要分配给新插入元素的值。

返回值

无。

异常

取决于底层容器。

时间复杂度

常数,即 O(1)

示例

以下示例显示了 std::stack::push() 函数的使用方法。

#include <iostream>
#include <stack>

using namespace std;

int main(void) {
   stack<int> s1;
   stack<int> s2;

   for (int i = 0; i < 5; ++i)
      s1.push(i + 1);

   while (!s1.empty()) {
      s2.push(move(s1.top()));
      s1.pop();
   }

   cout << "Stack contents are" << endl;
   while (!s2.empty()) {
      cout << s2.top() << endl;
      s2.pop();
   }

   return 0;
}

让我们编译并运行以上程序,这将产生以下结果:

Stack contents are
1
2
3
4
5
stack.htm
广告