ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C++ stack容器详解

2021-10-30 09:06:11  阅读:181  来源: 互联网

标签:容器 C++ stk stk1 详解 push 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

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有