STL中栈的实现

代码部分

cpp 复制代码
#include<iostream>
#include<stack>
using namespace std;
int main() {
	stack<int> intStack;
	stack<double> doubleStack;
	intStack.push(1);
	intStack.push(2);
	intStack.push(3);
	intStack.push(4);
	while (!intStack.empty()) {
		cout << intStack.top() << ' ';
		intStack.pop();
	}
	return 0;
}

首先就是添加一个属于栈容器头文件,只要有了它就可以直接使用STL中封装好的std::stack类,这样简直爽死,不用写那大串的代码,就可以直接使用,这就是C++相比C语言的魅力所在吧。

cpp 复制代码
#include<stack>

这个模板类里面自带了一些函数,包括push,pop,top,empty.

首先是定义一个栈,就一行语句:

cpp 复制代码
stack<int> intStack;
stack<double> doubleStack;

然后就可以直接使用对应的函数啦,在栈名后面加"."然后直接调用就好啦。

注意在stl的库中的栈中的pop函数返回值为void,所以不具备返回栈顶元素的作用。

相关推荐
apcipot_rain8 小时前
C++转Java日记(03)
java·开发语言·c++
布莱克6058 小时前
C++ 中 map 的 insert 与 emplace:key 已存在时会覆盖吗?
开发语言·数据结构·c++·算法·map
xys_6788 小时前
深挖C++:类和对象(中)
开发语言·c++
D e re k ZH11 小时前
C++ 系统学习手记:从语法细节到工程实践
开发语言·数据结构·c++·算法
石小石Orz12 小时前
AI 正在蚕食我们的编码能力
前端·后端·算法
xiaoye-duck12 小时前
《C++ 项目:手写大模型接入 SDK》Ollama接口设计(上):初始化、全量响应实现和测试
开发语言·网络·c++·语言模型
zaizai100713 小时前
【Effective Modern C++】学习第一章
c++
Fruiticecake13 小时前
C 程序员速通现代 C++(一):lambda、std::function、移动语义与智能指针
c语言·c++
民乐团扒谱机13 小时前
【微实验】NSGA-II(非支配排序遗传算法)——解决多目标优化问题的“自然选择模拟器”
linux·人工智能·算法