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

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

C++ Stack empty()函数

C++ Stack empty()函数用于测试容器是否为空。在许多情况下,在从堆栈中提取实际元素之前,程序员会优先检查堆栈是否确实包含某些元素。这样做在存储和成本方面是有利的。

句法

bool empty() const;

参量

没有参数。由于该函数仅用于测试目的,因此它直接应用于堆栈。因此,不会传递任何参数。

返回值

如果引用的容器为空,则该方法返回“ true”,否则返回“ false”。该方法仅用于测试目的,因此将根据测试结果返回值。

例子1

//下面给出的程序用于检测容器的空度。

#include 
#include 
int main()
{
    std::stack newstack;
    int sum=0;
    for (int j=1; j<=10; j++)
    newstack.push(j);
    while (!newstack.empty ())
    {
        sum += newstack.top ();
        newstack.pop ();
    }
    std::cout << "Result is: " << sum;
    return 0;
}
return 0;
}

输出:

Result is: 55

例子2

//下面给出的程序用于检测容器的空度。

#include 
#include 
using namespace std;
int main()
{
    std::stack newstack;
    newstack.push(69);
    //Checking whether the stack is empty
    if(newstack.empty())
    {
        cout<<"The stack is empty, insert some elements to keep going";
    }
    else
    {
        cout<<"Elements are present in the stack";
    }
    return 0;
}

输出:

Elements are present in the stack

复杂度

该函数仅用于检测容器的空度,因此不接受任何参数并且具有恒定的复杂性。

数据竞争

仅访问容器。访问堆栈以检查元素的存在。并非所有元素都可以通过此函数访问,但是可以一眼检查一下容器是否完全空了或是否存在。

异常安全

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