STL源码剖析中vector的Insert实现部分要点纪要

跟原书代码稍有差别,直接从SGI STL上Copy上来的也没有加注释

 

  

 

   问题1 这个开始非常想不明白,后来请教了一们大虾说是考虑到覆盖我才恍然大悟,因为参数是引用类型的,很有可能会在数据移动过程中参数的值也就是__x是发现变化而使用了一个临时变量来保存这个值.

 问题2 这个我一开始没想明白,后来又想了下是因为为了保正所有在vector中的对象都要调用一次自己的构造函数,因为赋值构造函数一个类并不能将他所有数据赋值给另一个类,主要是一些编绎器自己添加的值,比如虚表,所以为了保存每个对象的构造函数都被调用,为了区分这两两种情况,所以要加入判断来决定哪些要调用构造函数哪些不用再调用

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值