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。

学习不易,诸君共勉!

原文链接: https://www.cnblogs.com/daker-code/p/12008620.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    C++的vector容器清空

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/307265

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月16日 上午5:10
下一篇 2023年2月16日 上午5:10

相关推荐