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,所以不具备返回栈顶元素的作用。

相关推荐
炽烈小老头7 分钟前
【每天学习一点算法 2026/03/22】前 K 个高频元素
学习·算法
leaves falling9 分钟前
C++类和对象(1)
开发语言·c++
2401_8732046513 分钟前
模板编译期循环展开
开发语言·c++·算法
木心月转码ing13 分钟前
Hot100-Day51-TT70爬楼梯
算法
NAGNIP13 分钟前
一文搞懂经典的优化算法都有哪些?
算法
CoovallyAIHub16 分钟前
2.5GB 塞进浏览器:Mistral 开源实时语音识别,延迟不到半秒
深度学习·算法·计算机视觉
会编程的土豆22 分钟前
C++中的 lower_bound 和 upper_bound:一篇讲清楚
java·数据结构·算法
NAGNIP22 分钟前
一文搞懂深度学习中的损失函数设计!
人工智能·算法
阿里嘎多哈基米24 分钟前
速通Hot100-Day09——二叉树
算法·leetcode·二叉树·hot100
Frostnova丶27 分钟前
LeetCode 48 & 1886.矩阵旋转与判断
算法·leetcode·矩阵