首先请大家思考一个问题:以下6个问题可否共享一段代码?

答案是肯定的。采用泛型编程对问题进行抽象,抽取出以上问题的共性即算法(algorithm)、容器(container)和迭代器(itera),这也是STL(Standard Template Library, 标准模板库)的三要素。
1 template <class Iterator, class Act, class Test> 2 3 void process(Iterator begin, Iterator end, Act act, Test test) 4 5 //对容器中在给定范围内(即起于begin止于end)所有满足给定条件的元素进行处理 6 7 { 8 9 for (; begin != end; ++begin) //从头至尾遍历容器内的元素10 11 if (test(*begin)) act(*begin); //若当前元素满足条件,则对其采取行动12 13 }延伸阅读
学习是年轻人改变自己的最好方式
