本文主要是介绍c语言函数参数++自增--自减情况分析(二)c++中的list之erase操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
c++中的list之erase操作
正确的代码:
void listRelease(aList_t *naList)
{aList_t ::iterator iter;for (iter = naList->begin(); iter != naList->end(); ){LOGD_INFO << "release ";reportList->erase(iter++);}}
如果下面这样写for,就错啦:
for (iter = naList->begin(); iter != naList->end(); iter++)
原因是erase会把迭代器iter给破坏掉。
参考上篇博文:
c语言函数参数++自增–自减情况分析(一)
这篇关于c语言函数参数++自增--自减情况分析(二)c++中的list之erase操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!