20-list简单使用:
C++list的使用总结及常用list操作
C++中list用法详解
最近刚刚接触stl的list 学习的时候遇到了很多的困难 现在记录一下 主要是erase方法的使用
erase()方法是删除iterator指定的节点 但是要注意的是在执行完此函数的时候iterator也被销毁了 这样的话关于iterator的操作就会报错 以下是关于erase()方法的正确使用
正确使用方法1 std::list< int> List;
std::list< int>::iterator itList;
for( itList = List.begin(); itList != List.end(); )
{
if( WillDelete( *itList) )
{
itList = List.erase( itList);
}
else
itList++;
}
正确使用方法2 std::list< int> List;
std::list< int>::iterator itList;
for( itList = List.begin(); itList != List.end(); )
{
if( WillDelete( *itList) )
{
List.erase( itList++);
}
else
itList++;
}
错误使用方法1
std::list< int> List;
std::list< int>::iterator itList;
for( itList = List.begin(); itList != List.end(); itList++)
{
if( WillDelete( *itList) )
{
List.erase( itList);
}
}
错误使用方法2 std::list< int> List;
std::list< int>::iterator itList;
for( itList = List.begin(); itList != List.end(); )
{
if( WillDelete( *itList) )
{
itList = List.erase( ++itList);
}
else
itList++;
}
记录之
最新文章
- php关于ob_start(&#39;ob_gzhandler&#39;)启用GZIP压缩的bug
- datatable绑定comboBox显示数据[C#]
- pod template
- 控件的相对位置与绝对位置-UI界面编辑器(SkinStudio)教程
- 第1部分: 游戏引擎介绍, 渲染和构造3D世界
- java高级工程师必备知识
- Wunder Fund Round 2016 (Div. 1 + Div. 2 combined) A. Slime Combining 水题
- HDU 2340 Obfuscation(dp)
- CSS3 旋转的八卦图
- 【Xamarin挖墙脚系列:最重要的布局ListView】
- sublime text3 Emmet (原zenCoding)安装方法
- Java 9 揭秘(6. 封装模块)
- MVC导入命名空间
- Hadoop集群的JobHistoryServer详解(转载)
- WebApi的自定义Filter
- python的array初识
- python练习册 0002随机生成验证
- centos 7 安装iptables防火墙
- Django&;Flask区别
- VS2017写的exe调用Delphi 7写的DLL