首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

向量中的erase有关问题

2013-09-28 
向量中的erase问题[codejavascript] vectorchar * *m_vKeyNamenew vectorchar * //CBaseData *sdaf

向量中的erase问题

[code=javascript] vector<char *> *m_vKeyName=new vector<char *>;
 //CBaseData *sdafgasfsd=new CBaseData(/*vUseKeyName[ii]*/"",
// /*lppszChildData*/NULL,/*nChildCount+1*/0,/*m_nColCount*/0);//多一个标题行信息
 for(int gg=0;gg<6;gg++)
 {
 m_vKeyName->push_back("11");
 }
 if (m_vKeyName->size()==6)
 {
 for (int ss=0;ss<6;ss++)
 {
 m_vKeyName->erase(m_vKeyName->begin()+ss-ss);//移除无效对象
 }
 }
[/code]

求教,erase到第4次的时候死机,何解?
[解决办法]
引用:
m_vKeyName->erase(m_vKeyName->begin()+(ss-ss));
这样居然没报错,奇怪。。。


这是自己写的?还是别的地方拷贝的?
[解决办法]
vector.erase(iterator First, iterator Second)
删除[First,Second)半开半闭区间的元素,不要再循环中删除,在循环中找到要删除的2个位置就行了.
[解决办法]
http://www.cplusplus.com

热点排行