Effective STL 条款9

来源:互联网 发布:35岁考本科 知乎 编辑:程序博客网 时间:2024/05/16 19:00

在删除选项中仔细选择

本节核心内容:
如何高效的删除容器中的指定数据

结论如下:
1.去除一个容器中有特定值的所有对象

如果容器是vectorstring或者deque,使用erase-remove惯用法。

如果容器是list,使用list::remove

如果容器是标准关联容器,使用它的erase成员函数

2:去除一个容器中满足一个特定判定式的所有对象:

如果容器是vectorstring或者deque,使用erase-remove_if惯用法。

如果容器是list,使用list::remove_if

如果容器是标准关联容器,使用它的remove_copy_if和swap成员函数

3:在循环做一些事情的时候记得保证迭代器的有效性。

以上做法主要是为了提高容器使用的高效性。

1 0
原创粉丝点击