C++的vector容器清空
c++内部STL库中自带了一个容器vetcor, 自带了清空方法——clear()。但是clear使用之后,并不能清空数据,其数据再未被覆盖之前是不会改变的,个人猜测clear仅仅把指针挪动到了起始位置,所以需要清空置值的话,就需要配合上resize方法,resize重分配之后是可以直接 [ ] 访问的。
reszie有被重载过一次,有两种实现方式:
1、void resize(std::size_t __new_size, int __x);
2、void resize(std::size_t __new_size);
多出来的x是想初始化后生成的数,(其实个人感觉gcc里的函数声明的原型应该是这样的 void resize(std::size_t __new_size, int __x = 0); 默x为0)
当然,也可以用循环的方式进行清空。(目前只能想到这些)
如果想要清空二维的vetcor,那就得一行行的clear和resize。
学习不易,诸君共勉!
相关推荐
shayuchaor 2020-04-20
laohyx 2019-11-03
willluckysmile 2019-06-20
wangzhencsdn 2018-07-24
gaojunonly 2011-07-13
云华00 2016-11-10
StrugglingDog 2010-02-06
caojhuangy 2010-02-04
strongerzhou 2010-01-28
duwang0 2016-03-10
LULUBAO 2019-04-29
wlpython 2017-12-01
Jouen 2012-12-25
webEvelement 2009-10-20
vczh的日常 2018-03-19
MATLAB 2018-01-03