iis网站伪静态网站,微信自带小程序商城,建设部网站城市规划资质标准,住房和城乡建设部网站关于污水运行负荷率要求的文件目录
1.stack的介绍和使用
1.1stack的介绍
1.2stack的使用 2.stack的模拟实现 1.stack的介绍和使用
1.1stack的介绍 1. stack 是一种容器适配器#xff0c;专门用在具有后进先出操作的上下文环境中#xff0c;其删除只能从容器的一端进行元素的插入与提取操作。 2. stac…目录
1.stack的介绍和使用
1.1stack的介绍
1.2stack的使用 2.stack的模拟实现 1.stack的介绍和使用
1.1stack的介绍 1. stack 是一种容器适配器专门用在具有后进先出操作的上下文环境中其删除只能从容器的一端进行元素的插入与提取操作。 2. stack 是作为容器适配器被实现的容器适配器即是对特定类封装作为其底层的容器并提供一组特定的成员函数来访问其元素将特定类作为其底层的元素特定容器的尾部( 即栈顶 ) 被压入和弹出。 3. stack 的底层容器可以是任何标准的容器类模板或者一些其他特定的容器类这些容器类应该支持以下操作 empty 判空操作 back 获取尾部元素操作 push_back 尾部插入元素操作 pop_back 尾部删除元素操作 4. 标准容器 vector 、 deque 、 list 均符合这些需求默认情况下如果没有为 stack 指定特定的底层容器默认情况下使用deque 。 1.2stack的使用 2.stack的模拟实现 从栈的接口中可以看出栈实际是一种特殊的vector 因此使用 vector 完全可以模拟实现 stack 。 namespace fish
{templateclass T, class Con dequeTclass stack{public:void push(const T x) {_c.push_back(x);}void pop() {_c.pop_back();}T top() {return *(--_c.end());}const T top()const {return *(--_c.end());}size_t size()const {return _c.size();}bool empty()const {return _c.empty();}private:Con _c;};
}; 上面我自己写的模拟实现地源码包括了stl库中stack的主要接口有助于进一步地理解stack类。