C++之stack容器

简介: C++之stack容器

一、概念

概念: stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口;

 

二、代码

#include <iostream>
#include <stack>
 
using namespace std;
 
// 栈数据操作 概念: stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口;
void test01() {
    // 默认构造函数
    stack<int> v1;
    // 向栈顶添加元素
    v1.push(1);
    v1.push(2);
    v1.push(3);
    //拷贝构造函数
    stack<int> v2(v1);
    // 赋值
    stack<int> v3 = v1;
    // 判断堆栈是否为空
    cout << "v3 是否为空:" << v3.empty() << endl;
    // 返回栈大小
    cout << "v3 元素个数:" << v3.size() << endl;
    // 返回栈顶元素
    cout << v3.top() << endl;
    cout << "v3 是否为空:" << v3.empty() << endl;
    cout << "v3 元素个数:" << v3.size() << endl;
    // 从栈顶移除第一个元素
    v3.pop();
    cout << "v3 是否为空:" << v3.empty() << endl;
    cout << "v3 元素个数:" << v3.size() << endl;
}
 
int main() {
    test01();
    system("pause");
    return 0;
}
 
v3 是否为空:0
v3 元素个数:3
3
v3 是否为空:0
v3 元素个数:3
v3 是否为空:0
v3 元素个数:2
相关文章
|
28天前
|
存储 搜索推荐 C++
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器2
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器
41 2
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器2
|
14天前
|
存储 算法 调度
【C++打怪之路Lv11】-- stack、queue和优先级队列
【C++打怪之路Lv11】-- stack、queue和优先级队列
23 1
|
19天前
|
设计模式 存储 C++
C++之stack 和 queue(下)
C++之stack 和 queue(下)
28 1
|
28天前
|
存储 C++ 容器
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器1
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器
45 5
|
28天前
|
存储 编译器 C++
【C++篇】揭开 C++ STL list 容器的神秘面纱:从底层设计到高效应用的全景解析(附源码)
【C++篇】揭开 C++ STL list 容器的神秘面纱:从底层设计到高效应用的全景解析(附源码)
44 2
|
19天前
|
C++ 容器
C++之stack 和 queue(上)
C++之stack 和 queue(上)
48 0
|
26天前
|
存储 C++ 容器
C++番外篇——stack、queue的实现及deque的介绍
C++番外篇——stack、queue的实现及deque的介绍
22 0
|
26天前
|
存储 算法 C++
C++入门10——stack与queue的使用
C++入门10——stack与queue的使用
37 0
|
28天前
|
设计模式 存储 C++
【C++】C++ STL探索:容器适配器 Stack 与 Queue 的使用及模拟实现(二)
【C++】C++ STL探索:容器适配器 Stack 与 Queue 的使用及模拟实现
|
28天前
|
存储 C++ 容器
【C++】C++ STL探索:容器适配器 Stack 与 Queue 的使用及模拟实现(一)
【C++】C++ STL探索:容器适配器 Stack 与 Queue 的使用及模拟实现