当前位置: 首页 > news >正文

网站开发已有的知识储备平台推广使用机制方案

网站开发已有的知识储备,平台推广使用机制方案,什么叫优化关键词,支持html5的网站本专栏内容为:C学习专栏,分为初阶和进阶两部分。 通过本专栏的深入学习,你可以了解并掌握C。 💓博主csdn个人主页:小小unicorn ⏩专栏分类:C 🚚代码仓库:小小unicorn的代码仓库&…

本专栏内容为:C++学习专栏,分为初阶和进阶两部分。 通过本专栏的深入学习,你可以了解并掌握C++。

💓博主csdn个人主页:小小unicorn
⏩专栏分类:C++
🚚代码仓库:小小unicorn的代码仓库🚚
🌹🌹🌹关注我带你学习编程知识

STL详解(八)

  • 容器适配器
  • stack的模拟实现:
  • queue的模拟实现:

容器适配器

stack和queue有一点需要注意的是,虽然stack和queue中也可以存放元素,但在STL中并没有将其划分在容器的行列,而是将其称为容器适配器,这是因为stack和queue只是对其他容器的接口进行了包装,STL中stack和queue默认使用deque容器。

在stack和queue的类模板声明当中我们就可以看到,它们的模板参数有两个,第一个是stack和queue当中所存储的元素类型,而另一个就是指定使用的容器类型。只不过当我们不指定使用何种容器的情况下,stack和queue都默认使用deque作为指定容器。
在这里插入图片描述
理解: 学过数据结构后我们都知道,stack和queue既可以使用顺序表实现,也可以使用链表实现。
在这里我们若是定义一个stack,并指定使用vector容器,则定义出来的stack实际上就是对vector容器进行了包装

stack的模拟实现:

知道了容器适配器后,stack的模拟实现就显得相当简单,我们只需要调用所指定容器的各个成员函数即可实现stack的各个函数接口。
在这里插入图片描述
模拟实现代码如下:

namespace NIC //防止命名冲突
{template<class T, class Container = std::deque<T>>class stack{public://元素入栈void push(const T& x){_con.push_back(x);}//元素出栈void pop(){_con.pop_back();}//获取栈顶元素T& top(){return _con.back();}const T& top() const{return _con.back();}//获取栈中有效元素个数size_t size() const{return _con.size();}//判断栈是否为空bool empty() const{return _con.empty();}//交换两个栈中的数据void swap(stack<T, Container>& st){_con.swap(st._con);}private:Container _con;};
}

测试一下:
在这里插入图片描述

queue的模拟实现:

同样的方式,我们也是通过调用所指定容器的各个成员函数来实现queue的。
在这里插入图片描述
模拟实现代码如下:

namespace NICO //防止命名冲突
{template<class T, class Container = std::deque<T>>class queue{public://队尾入队列void push(const T& x){_con.push_back(x);}//队头出队列void pop(){_con.pop_front();}//获取队头元素T& front(){return _con.front();}const T& front() const{return _con.front();}//获取队尾元素T& back(){return _con.back();}const T& back() const{return _con.back();}//获取队列中有效元素个数size_t size() const{return _con.size();}//判断队列是否为空bool empty() const{return _con.empty();}//交换两个队列中的数据void swap(queue<T, Container>& q){_con.swap(q._con);}private:Container _con;};
}

测试一下:
在这里插入图片描述

http://www.yayakq.cn/news/818127/

相关文章:

  • 一个公司做两个网站可以吗wordpress付费查看
  • 提供网站建设管理化妆品购物网站模板下载
  • 做网站电话销售的话术seo谷歌推广
  • win7 iis创建网站营销策划公司名字大气好听
  • 网站建设深圳官网查看网站国际联网备案号
  • 天津网站制作重点跨境电商官方网站建设
  • 服务中心网站建设方案山西传染病最新消息今天
  • 微信平台APP网站建设怎么样一级域名二级域名哪个好
  • openshift 做网站优秀的网站举例
  • 怎么制作企业网站网站开发采购合同模板下载
  • 网站制作方法餐饮类网站模板
  • 做名人故居的网站多少钱广告设计与制作学啥
  • ui做的好的网站有哪些2023最近的新闻大事10条
  • 百胜招聘 网站开发网站建设公司哪个好呀net网站建设
  • 做网站要会什么wordpress 回复评论
  • 怎样使用自己的电脑做网站z怎么做优惠券网站
  • 贵州省建设厅建筑质监站网站网站备案收费
  • 家居用品东莞网站建设昆山建设局网站首页
  • 石家庄网络推广公司seo是免费的吗
  • 成都网站推广多少钱瑞安外贸网站制作
  • 做电工的有接单的网站吗沈阳鹊起网站建设公司
  • 网站公司动态做不了怎么办网站建设技术进行开发
  • 网站备案号怎么添加甘肃网络科技有限公司
  • 网站建设忄金手指稳定wordpress参考文档
  • 网站制作需要多少钱?织梦cms做网站
  • 甘肃肃第八建设集团网站1收费的网站如何免费
  • 网站做百度推广划算吗服务器搭建网站软件
  • 自己在公司上班做网站宣传 侵权吗企业文化墙设计图
  • 网站建设写代码自己怎么创业建设通怎么查有无在建
  • 凡科建站官网 网络服务发布培训的免费网站模板