c++ - 为什么使用 std::stack 或 std::queue?

标签 c++ stack containers stdvector stddeque

<分区>

为什么我要使用 std::stackstd::queue 而不是 std::vectorstd::deque?

既然容器适配器只是标准容器的包装器,为什么还要使用它们呢?

最佳答案

To limit the user interface 您不希望您的堆栈能够在其他地方而不是顶部移除元素。如果性能完全相同,为什么要使用 vector 代替堆栈,堆栈还可以提高可读性和可靠性。

std::stackstd::vector 更具表现力当您要实现的容器确实是一个 LIFO .

关于c++ - 为什么使用 std::stack 或 std::queue?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37607309/

相关文章:

javascript - 一维阵列 - 以最少的浪费确定最佳容器尺寸

c++ - C++中的继承问题

c++ - 在 .cpp 文件中实现时访问私有(private)成员

kubernetes - 如何在 Kubernetes 中使用 NodePort 服务在公共(public) Ip 上公开 nginx?

c++ - 我正在处理 Prototype does not match in any class error in c++

c - 获取 HP-UX 11 中当前线程的堆栈大小

docker compose 容器之间共享文件

c++ - C++中会出现脆弱基类问题吗?

c++ - 在 C++ 中对共享指针的 vector 进行排序

c++ - 使用 const 数组元素初始化