C/C++教程

C++ stack容器详解

本文主要是介绍C++ stack容器详解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

C++ stack容器

    • stack容器的基本概念
    • stack的常用接口
      • 1.构造函数
      • 2.赋值操作
      • 3.数据存取
      • 4.大小操作
    • 测试:

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++ stack容器详解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!