码迷,mamicode.com
首页 > 编程语言 > 详细

C++的vector容器清空

时间:2019-12-09 01:44:03      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:gcc   覆盖   位置   cti   tco   res   函数声明   c++   两种   

  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。

学习不易,诸君共勉!

C++的vector容器清空

标签:gcc   覆盖   位置   cti   tco   res   函数声明   c++   两种   

原文地址:https://www.cnblogs.com/daker-code/p/12008620.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!