C 语言

关注公众号 jb51net

关闭
首页 > 软件编程 > C 语言 > C++ stack用法

C++ stack用法总结(示例详解)

作者:机器人那些事儿

std::stack 是 C++ 标准模板库(STL)中的容器适配器,它提供了栈(stack)的功能,基于其他序列容器实现,下面给大家介绍std::stack 的用法总结,感兴趣的朋友一起看看吧

std::stack 是 C++ 标准模板库(STL)中的容器适配器,它提供了栈(stack)的功能,基于其他序列容器实现。以下是 std::stack 的用法总结:

包含头文件:

#include <stack>

创建 std::stack 对象:

std::stack<ElementType> myStack;

ElementType 是栈中元素的类型。 压入元素到栈中:

myStack.push(element);

弹出栈顶元素:

myStack.pop();

获取栈顶元素:

ElementType topElement = myStack.top();

检查栈是否为空:

bool isEmpty = myStack.empty();

获取栈的大小:

size_t size = myStack.size();

示例:

#include <iostream>
#include <stack>
int main() {
    std::stack<int> myStack;
    // 压入元素
    myStack.push(10);
    myStack.push(20);
    myStack.push(30);
    // 获取栈顶元素
    std::cout << "Top element: " << myStack.top() << std::endl;
    // 弹出栈顶元素
    myStack.pop();
    // 获取栈的大小
    std::cout << "Stack size: " << myStack.size() << std::endl;
    // 遍历栈(栈没有迭代器,需要弹出元素直至为空)
    while (!myStack.empty()) {
        std::cout << myStack.top() << " ";
        myStack.pop();
    }
    std::cout << std::endl;
    return 0;
}

这是一个简单的使用 std::stack 的例子。栈是一个后进先出(Last-In-First-Out,LIFO)的数据结构,std::stack 提供了对栈操作的方便接口。在实际应用中,栈常常用于解决问题,例如表达式求值、递归问题的迭代实现等。

到此这篇关于C++ stack用法总结的文章就介绍到这了,更多相关C++ stack用法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文