关于c++中栈STL的问题
Questions about stack STL in C++
所以我试图理解堆栈STL允许你做什么。我知道你首先包括堆栈,然后创建一个像这样的对象:
#include<stack>
stack<int> calcStack;
但是我想理解的是,现在我已经创建了一个堆栈,我怎么能添加数字到它,然后读出它们。从一个视频中,我看到有人这样做:
calcStack.push(1); //Adding the number one to the top of the stack
calcStack.top(); //Reading the number at the top of the stack
calcStack.pop(); //Removing the number at the top of the stack
cout << calcstack.top << endl; //This should print out one
这是否意味着我可以使用函数.push() .top() .pop()
而不必在.cpp文件中定义它们?我也应该在头文件中创建我的堆栈,实现文件或文件与主类?
这是我第一次使用栈,我刚刚开始使用c++,所以任何指导将是感激的!!
您不必为堆栈定义任何函数。它是标准库的一部分。这意味着库本身已经为您定义了它们。
你所需要担心的是:
- 包括正确的标题
- 链接到正确的库(当您使用g++(而不是gcc)编译时,会自动链接到标准库)。如果你使用的是MSVC,那么它也会自动链接到标准库中。
相关文章:
- 在C++中迭代 STL 集时出现奇怪的问题<CStudent>
- 为什么C++中的大括号初始化可以解决STL容器的初始化问题
- 使用队列和列表 STL 进行C++分配。在将数据填充到列表或队列中然后打印该数据时遇到问题
- 是包含容器性能问题的STL关联容器
- 将一个STL向量有效地分配给另一个STL矢量(WSL问题)
- 链接模板与传递 stl 容器的问题
- C++ STL 地图:BSTR 的问题
- STL链接列表问题
- DEV-C++5.11 STL迭代器的调试问题
- C++:问题向量 STL.
- stl 堆栈和 top() 函数的问题
- 删除元素时使用 STL 映射的迭代器时遇到问题
- STL 映射和指针出现问题
- 关于地图 STL 的问题
- c++:stl哈希编译问题
- 关于C++中STL容器的问题
- 如果我使用函数指针作为一对的值,我会遇到stl::pair问题2051吗
- 在C++STL中使用men_fun的bind1st上的一个旧问题
- C++STL版本控制问题+Boost
- 自定义STL列表实现问题