📅  最后修改于: 2023-12-03 14:39:52.148000             🧑  作者: Mango
在C++ STL中,stack是一个容器适配器,它是基于deque实现的后进先出(LIFO)的数据结构。stack提供了多个成员函数,包括empty()和size()。本文将介绍这两个成员函数的用法和示例。
stack empty()函数返回一个bool值,表示当前的stack是否为空。如果stack为空,则返回true,否则返回false。
下面是stack empty()函数的格式:
bool empty() const;
下面是一个示例程序,演示了如何使用empty()函数:
#include <iostream>
#include <stack>
using namespace std;
int main()
{
stack<int> s;
if (s.empty()) // 检查stack是否为空
cout << "stack is empty" << endl;
else
cout << "stack is not empty" << endl;
s.push(1); // 将元素1加入stack
if (s.empty()) // 再次检查stack是否为空
cout << "stack is empty" << endl;
else
cout << "stack is not empty" << endl;
return 0;
}
输出:
stack is empty
stack is not empty
stack size()函数返回stack中元素的数量。
下面是stack size()函数的格式:
size_t size() const;
下面是一个示例程序,演示了如何使用size()函数:
#include <iostream>
#include <stack>
using namespace std;
int main()
{
stack<int> s;
cout << "size of stack: " << s.size() << endl; // 输出stack中元素的数量
s.push(1); // 将元素1加入stack
s.push(2); // 将元素2加入stack
cout << "size of stack: " << s.size() << endl; // 输出stack中元素的数量
return 0;
}
输出:
size of stack: 0
size of stack: 2