c++中std::find()函数

概述:

find()函数就是在指定迭代器范围内查找要查找的数据.

find函数在容器的内部已经存在了,但是stl还提供一个全局的find函数.

原因:  对于容器内置的find()函数是专门对于当前容器的结构进行设置的, 其内部可能会有相应的优化, 在处理特定的容器的查找的时候,具有更高的效率. 所以对于容器中有内置的find的时候,应该使用内置的find.

像vector,list,deque其内部都没有内置的find,就可以使用全局的find实现在一定范围内查找某样数据, 当然你也可以直接使用循环在指定范围内比较比较.  (其实全局的find内部就是简单的在给定范围内比较), 使用这个函数可以避免重复造轮子.

find的使用:   

  • find(iter1,iter2,target),   // 传入两个圈定范围的迭代器, 然后给定要找的目标值, 其找到之后,会返回找到的第一个满足要求值的迭代器, 否则返回与end()一样的迭代器位置.
  • find(arr,arr+5,'a');         // 其还可以用来查找其它序列中对应范围的元素, 传递两个指针指定范围, 传递要找的目标值, 找到返回指向第一个满足要求值的指针, 否则返回NULL.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值