编程语言
首页 > 编程语言> > C++ stack容器详解

C++ stack容器详解

作者:互联网

C++ stack容器

stack容器的基本概念

stack是一种先进先出的数据结构,被称为栈,它只有一端可以出入。
栈中进入数据称为——入栈(push)
栈中弹出数据称为——出栈(pop)
在这里插入图片描述

注意:

  1. 栈可以判断是否为空,也可以返回栈中元素个数,但栈不允许有遍历行为
  2. 使用stack容器必须包含头文件#include< stack >

stack的常用接口

1.构造函数

stack stk; //stack采用模板类实现,默认构造
stack(const stack &stk) //拷贝构造

2.赋值操作

stack& operator=(const stack& stk);//重载赋值运算符

3.数据存取

push(elem); //向栈顶添加元素
pop(); //从栈顶删除一个元素
top(); //返回栈顶元素

4.大小操作

empty(); //判断栈是否为空
size(); //返回栈的大小

测试:

void text()
{
	stack<int> stk1;
	for (int i = 0; i < 5; ++i)
	{
		stk1.push(i+10);
	}
	stack<int> stk2(stk1);
	cout << "stk1的大小为:" << stk1.size() << endl;
	cout << "stk2的大小为:" << stk2.size() << endl;
	//打印栈顶元素并出栈
	while (!stk1.empty())//栈非空时
	{
		cout << "stk1栈顶元素为:" << stk1.top() << endl;
		stk1.pop();
	}
	cout << "stk1的大小为:" << stk1.size() << endl;
	stk2 = stk1;
	cout << "stk2的大小为:" << stk2.size() << endl;
}

测试结果:
在这里插入图片描述

标签:容器,C++,stk,stk1,详解,push,stack,赋值
来源: https://blog.csdn.net/qq_52324409/article/details/121042345