c++

c++中栈是怎么实现的

小亿
84
2024-04-19 10:18:14
栏目: 编程语言

在C++中,栈可以通过使用标准库中的std::stack来实现。std::stack是一个模板类,可以使用std::dequestd::liststd::vector等STL容器来实现。

下面是一个使用std::stackstd::vector实现栈的示例代码:

#include <iostream>
#include <stack>
#include <vector>

int main() {
    std::stack<int, std::vector<int>> myStack;

    myStack.push(1);
    myStack.push(2);
    myStack.push(3);

    while (!myStack.empty()) {
        std::cout << myStack.top() << " ";
        myStack.pop();
    }

    std::cout << std::endl;

    return 0;
}

在上面的示例代码中,通过std::stack<int, std::vector<int>> myStack声明了一个整型的栈,并使用std::vector作为底层容器。然后使用push()方法向栈中压入元素,使用top()方法访问栈顶元素,使用pop()方法弹出栈顶元素,使用empty()方法判断栈是否为空。

通过std::stack,可以方便地实现栈的功能,无需手动编写栈的数据结构。

0
看了该问题的人还看了