关于vector的问题
我把a申明为vector的目的是a的长度不知道,是由用户的操作而决定。
作者: gg513482543 发布时间: 2011-06-13
如果想做到“我又需要在程序完全结束之前重新定义a里面的所有内容,即好比a里面什么都没有,并且还能用push_back给a赋值。”这个很容易,把a里面的内容全部删除就好了,如下:
C/C++ code
a.erase(a.begin(), a.end());
参考这个链接:
http://www.cplusplus.com/reference/stl/vector/erase/
作者: pathuang68 发布时间: 2011-06-13
vector< int > a; .... a.push_back( 10 ); ....... a.clear( ); //清除a中所有元素 ......... a.push_back( 20 ); ......
作者: supermegaboy 发布时间: 2011-06-13
作者: gg513482543 发布时间: 2011-06-13
我想对a的操作实际等效于销毁它,然后又重新用push_back给a赋值,问题就是用什么销毁向量a呢?
我觉得程序员没必要去处理容器里的东西 特指程序完全结束之前重新定义a里面的所有内容
作者: c_losed 发布时间: 2011-06-13
洗洗就行了嘛!!想啥呢!
作者: coding_hello 发布时间: 2011-06-13
难道就没有能使a销毁的函数了吗????
作者: gg513482543 发布时间: 2011-06-13
主要是我的程序涉及这个,它需要根据的操作来做;当输入a中的内容有错时,需要把a销毁然后再重新给a赋值
难道就没有能使a销毁的函数了吗????
1楼可以解决你说的问题。。。
也可以用判断条件来进行eraser某个元素
作者: c_losed 发布时间: 2011-06-13
Expression:vector subscript out of range
作者: gg513482543 发布时间: 2011-06-13
主要是我的程序涉及这个,它需要根据的操作来做;当输入a中的内容有错时,需要把a销毁然后再重新给a赋值
难道就没有能使a销毁的函数了吗????
a.clear( )就是清除了a的内容了。
作者: supermegaboy 发布时间: 2011-06-13