【Effective STL系列】

来源:互联网 发布:驿站传书 题目知乎 编辑:程序博客网 时间:2024/05/16 19:21

前言

本书是针对STL的经验总结,书中列出了50个条款,绝大多数条款都解释了在使用STL时应该注意的某一个方面的问题,并且详尽地分析了问题的来源、解决方案的优劣。这是作者在教学和实践过程中总结出来的经验,条款中的内容值得我们学习和思考。在学习这本书的时候,我会结合c++一些新特性,对比学习。

汇总

Item1、仔细选择你的容器
Item8&9、根据容器类型选择合适的删除方式
Item13&14、尽量使用容器代替数组
Item19、注意相等和等价的区别
Item20、为指针和关联容器指定比较类型
Item21、永远让比较函数对相等值返回false
Item23、考虑使用有序vector代替关联容器
Item24、当关乎效率时应该在map::operator[]和map-insert之间仔细选择
Item30、确保目标区间足够大
Item31、了解你的排序选择:灵活使用stl的排序算法,能起到事半功倍的作用。
Item32、如果你真的想删除东西的话就在类似remove的算法后接上 erase
Item33、提防在指针容器上使用类似remove的算法
Item34、注意哪些算法需要有序区间
Item36、了解copy_if的正确实现
Item37、用accumulate或for_each来统计区间
Item38、把仿函数类设计为用于值传递
Item39、用纯函数做判断式
Item40、使你的仿函数可适配
Item43、尽量用算法调用代替手写循环
Item44、尽量用成员函数代替同名的算法
Item45-50、注意count、find、binary_search 、lower_bound、upper_bound和equal_range的区别

—end!

原创粉丝点击