📜  C++ STL-stack.push()函数

📅  最后修改于: 2020-10-19 00:53:21             🧑  作者: Mango

C++ Stack push()函数

C++ Stack push()函数用于在堆栈顶部添加新元素。如果我们有一个类型为stack的数组,并且通过使用push()函数,我们可以在堆栈中插入新元素。元素将插入到堆栈的顶部。随着堆栈遵循LIFO原则,最开始插入的元素将在末尾删除,反之亦然。

句法

void push (const value_type& value);

参量

value:参数表示元素要初始化的值。该参数指定新插入的元素的值。函数执行后,元素“ val”成为堆栈中新的顶层元素。

返回值

该函数仅插入元素,不返回任何值。该函数的返回类型可以认为是无效的。

例子1

//该程序用于通过插入简单的整数值来演示堆栈的push()函数的使用。

#include 
#include 
int main()
{
         std::stack newstack;
         for(int j= 0; j<5; j++)
         newstack.push(j);
         std::cout << "Poping the elements out of the stack??.";
         while (!newstack.empty () )
         {
       std::cout<<" " << newstack.top ();
        newstack.pop();
    }
    

std::cout<<"\n";
return 0;
}

输出:

Poping the elements out of the stack..... 4 3 2 1 0

例子2

#include 
#include 
int main()
{
    
        std::stack newstack;
        newstack.push(69);
        newstack.push(79);
        newstack.push(80);
        while (!newstack.empty())
        {
            std::cout<<" " << newstack.top ();
            newstack.pop();
        }
        return 0;
}

输出:

90 85 80 79 69

例子3

//该程序用于通过插入简单的整数值来演示堆栈的push()函数的使用。

#include 
#include 
int main()
{
    std::stack newstack; 
    newstack.push(11);
    newstack.push(22);
    newstack.push(33);
    newstack.push(44);
    std::cout << "Popping out elements?";
    newstack.pop();
    newstack.pop();
    while (!newstack.empty () )
    {
        std::cout << " " << newstack.top();
        newstack.pop();
    }
    std:: cout<<'\n';
    return 0;
}

输出:

Popping out elements... 22 11  

例子4

//该程序用于通过插入简单的整数值来演示堆栈的push()函数的使用。

#include 
#include 
int main()
{
    std::stack a,b;
    a.push(5); a.push(8); a.push(50);
    b.push(132); b.push(45);
    std::cout<<"Size of a: "<

输出:

Size of a: 3
Size of b:2 

复杂度

调用一次对基础容器的回推,这对于完成元素上的插入操作是必需的。

数据竞争

对容器及其包含的元素进行了修改。添加新元素将修改所有基础堆栈元素。

异常安全

提供与在基础容器对象上执行的操作等效的保证。