哪个实现堆栈库在c ++中使用?

时间:2012-12-13 00:01:42

标签: c++ stack

我读到可以使用

实现ADT堆栈

数组

链接列表

ADT列表

但是当我使用堆栈时,我只是调用堆栈库。这些实现堆栈库中的哪一个使用?

1 个答案:

答案 0 :(得分:6)

std::stack是一个容器适配器,它使用其他容器作为数据的底层存储。默认为std::deque,但如果您愿意,可以指定其他序列,例如std::liststd::vector

对底层容器的要求非常小 - 如果内存服务,则需要支持back()push_back()pop_back()size()和{{1 (除非你使用swap()stack::size(),否则不需要最后两个,这可能不是那么常见)。