作为 C++ STL 一部分的堆栈实现是否有容量?



我在大学的DSA课程中学到,堆栈初始化时的容量限制了它可以包含的元素数量。但是当我使用STL创建堆栈时,您不必定义容量。是否涉及到容量,或者它是否适用于STL实现?堆栈真的需要容量吗?

您在课程中看到的堆栈实现可能有限制,但这对于堆栈来说不是必需的。(你的课程真的应该教你这个。)

c++标准库栈只是支持必要操作的底层集合的适配器,因此它是否有有限的容量取决于底层类型。
(默认为std::deque)

STL中的堆栈是一种容器适配器类型,因此是否定义容量将取决于您使用的底层容器类型(vector、deque(默认)或list)。还有一点,不要把它与堆栈内存混淆,堆栈内存的大小是有限的。

相关内容

最新更新