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

上海网站seo排名/腾讯新闻最新消息

上海网站seo排名,腾讯新闻最新消息,宁波网站建设地址在哪,bigapp wordpress引言 在第一篇文章 深入浅出之STL源码分析1_vector基本操作-CSDN博客 中有引出了下面的几个问题 1.刚才我提到了我的编译器版本是g 11.4.0,而我们要讲解的是STL(标准模板库),那么二者之间的关系是什么?STL安装后我们…

引言

在第一篇文章 深入浅出之STL源码分析1_vector基本操作-CSDN博客

中有引出了下面的几个问题

1.刚才我提到了我的编译器版本是g++ 11.4.0,而我们要讲解的是STL(标准模板库),那么二者之间的关系是什么?STL安装后我们到哪里去看源码?

2.我们引入了头文件#include<vector>

这里的vector的内容是什么?

3.vector<int> test_vector; 这中定义方式是干什么?<>的作用是什么?

4.test_vector.push_back(22); 对于stl源码底层到底做了什么?把对应的数据插入到了哪个地址了?

什么时候分配的虚拟内存?什么时候扩容?什么时候会分配物理内存?

下面开始讲解问题4.由于这个的内容将会把vector的所有源码都呈现出来,所以这个将会分不同的小节来进行讲解。

从push_back源码开始看起

#include<vector>
#include<iostream>
using namespace std;
int main(int argc,char *argv[]){vector<int> test_vector;test_vector.push_back(22);std::cout << test_vector.back() << std::endl;return 0;
}

向里继续看源码,

看到我们这里会调用push_back的这个函数:参数是个右值引用,所以接的是右值,而我们传进来的是22,确实是个右值。

#if __cplusplus >= 201103Lvoidpush_back(value_type&& __x){ emplace_back(std::move(__x)); }

 我们再来继续追踪这个 emplace_back源码:

通过这个源码我们可以看到有几个重要的点

1.开头的这种写法是什么意思?

#if __cplusplus >= 201103L

template<typename _Tp, typename _Alloc>

template<typename... _Args>

为啥这个类成员函数的实现的时候,怎么有两个template<>,这个我们可以看下成员函数的声明,就很清楚了,
 


#if __cplusplus >= 201103Lvoidpush_back(value_type&& __x){ emplace_back(std::move(__x)); }template<typename... _Args>
#if __cplusplus > 201402Lreference
#elsevoid
#endifemplace_back(_Args&&... __args);
#endif

也就是类成员函数声明的时候,每个成员函数又可以有自己的模版参数,比方这里当 

#if __cplusplus >= 201103L的时候,

template<typename... _Args>

类成员函数有了自己的模版参数,所以才有了上面函数在实现的时候,带了两个template<>,一个是整个类的,一个是类成员函数自己的。

这里我们可以写一个简单的小demo来看下。

2.this->_M_impl._M_finish != this->_M_impl._M_end_of_storage 这个又是什么东西? 

http://www.whsansanxincailiao.cn/news/32030634.html

相关文章:

  • 综合b2b网站有哪些/seo快速优化技术
  • 做推文的网站/什么平台可以打广告做宣传
  • 网站推广优化外包公司/百度云官方网站
  • 中学网站源码/怎样做网站的优化、排名
  • 男生做网站运营的前景/竞价推广哪家公司好
  • 做网站的图片的内存/热门关键词查询
  • 行业协会网站建设的目的/单个药品营销策划方案
  • 重庆网站供奉战犯/怎么建网站平台卖东西
  • 企业网站建设一般要素/百度经验手机版官网
  • 怎么做网络棋牌网站/搜索引擎营销成功的案例
  • 河南建筑信息公共/四川seo推广方案
  • 商业网站怎么做/如何做个人网站
  • 企业手机网站建设效果/福州百度推广排名优化
  • 大淘客网站logo怎么做/seo是干什么的
  • wordpress主题圆角/优化公司怎么优化网站的
  • 怎样做邪恶网站/搜索引擎营销成功案例
  • 在哪里建立个人网站/百度官方电话号码
  • 做旅游网站的产品经理如何/软文拟发布的平台与板块
  • 汕头网站建设制作公司/无代码免费web开发平台
  • 响应式网站开发源码/网店运营教学
  • wordpress首页主题/seo也成搜索引擎优化
  • wordpress怎样分类目录添加标签/seo网址
  • iis默认网站打不开/网站建设技术解决方案
  • 公司申请网站建设申请理由/站内推广的方法和工具
  • 学会网站开发有什么好处/如何在微信上做广告
  • 做盗版小说网站赚钱嘛/写软文的平台有哪些
  • 平面设计素材网站排名/国内比百度好的搜索引擎
  • 网页设计基础课程设计/seo客服
  • 新手做站必看 手把手教你做网站/windows优化大师怎么彻底删除
  • 彩票网站做一级代理犯法吗/徐州自动seo