首页 > 技术文章 > 泛函算法

zzm1 2020-01-10 10:11 原文

1.find()用于搜索无序集合中是否存在某值。搜索范围由iterator[first,last]指出。如果找到目标,find()会返回一个iterator指向该值,否则返回一个iterator指向last。

2.count()返回数值相符的元素数目。

3.Iterator(泛型指针),可提供有如内置运算符(++,*,==,!=)并允许我们只为这些运算符提供一份实现代码即可。first和last皆为iterator class object。像是在把first和last当作指针一样。唯一的差别在于其dereference(提领,*)运算符,(!=,++)运算符是由iterator class内相关的Inline函数提供。对于list iterator而言,其递增函数会沿着list的指针前进到下一个元素,对vector iterator而言,其递增函数前进至下一个元素的方式,是将目前的地址加上一个元素的大小。

4.获得iterator的方式,每个标准容器都提供有一个名为begin()的操作函数,可返回一个iterator,指向第一个元素。

5.引入function object的概念,使得我们能够将某组行为传给函数。此法比函数指针的效率更高。

推荐阅读