条款32:如果你真的想删除东西的话就在类似remove的算法后接上erase 我将从remove的复习开始这个条款,因为remove是STL中最糊涂的算法。误解remove很容易,驱散所有关于re
需要一个一个字符输入时考虑使用istreambuf_iterator 假设我们要把一个文本文件拷贝到一个字符串对象中。似乎可以用一种很有道理的方法完成: ifstream inputFile("in
仔细选择你的容器 你知道C++中有很多你可以支配的容器,但是你意识到有多少吗?要确定你没有忽略你的选项,这里有一个快速回顾。 标准STL序列容器:vector、string、deque和li
条款50:让你自己熟悉有关STL的网站 因特网充满了STL的信息。用你最喜欢的搜索引擎寻找“STL”,它一定会返回几百个链接,其中有一些可能实际上是相关的。不过,对于大多数S
条款37:用accumulate或for_each来统计区间 有时候你需要把整个区间提炼成一个单独的数,或,更一般地,一个单独的对象。对于一般需要的信息,有特殊目的的算法来完成这个任务,比如,cou
条款35:通过mismatch或lexicographical比较实现简单的大小写无关字符串比较 一个STL菜鸟最常问的问题是“我怎么使用STL来进行大小写无关的字符串比较?”
条款13:尽量使用vector和string来代替动态分配的数组 这一刻,你决定使用new来进行动态分配,你需要肩负下列职责: 你必须确保有的人以后会delete这个分配。如果后面没
条款28:了解如何通过reverse_iterator的base得到iterator 调用reverse_iterator的base成员函数可以产生“对应的”iterator,但这句话有些辞不达意
条款27:用distance和advance把const_iterator转化成iterator 中指出有些容器成员函数只接受iterator作为参数,而不是const_iterator。那么,如
条款26:尽量用iterator代替const_iterator,reverse_iterator和const_reverse_iterator 正如你所知的,每个标准容器类都提供四种迭代器类型。