设为首页 加入收藏

TOP

4.4.3 使用find()算法
2013-10-07 14:46:15 来源: 作者: 【 】 浏览:50
Tags:4.4.3 使用 find 算法

4.4.3  使用find()算法

在显示向量scores的内容后,程序从用户获取要查找的值,并存储在变量score中。然后,程序使用find()算法在scores向量中查找该值:

  1. iter = find(scores.begin(), scores.end(), score); 

STL的find()算法在指定范围内的容器元素中查找值,它返回引用第一个匹配元素的一个迭代器。如果没有找到匹配的元素,则返回的迭代器指向指定范围的结尾处。必须给find()传递一个起点迭代器、一个终点迭代器和要查找的值。该算法从起点迭代器开始查找,一直查找到但不包括终点迭代器。本例中,程序将scores.begin()和scores.end()作为算法的前两个实参来搜索整个向量。作为第三个实参的score是用户输入的需要查找的值。

接下来,程序检查值score是否找到:

  1. if (iter != scores.end())  
  2. {  
  3. cout << "Score found.\n";  
  4. }  
  5. else  
  6. {  
  7. cout << "Score not found.\n";  
  8. }  

请记住,如果找到score的值,iter将引用向量中第一次出现score的元素。因此,只要iter不等于scores.end(),就说明查找成功。随后程序显示消息表示查找成功。否则,iter将等于scores.end(),说明查找失败。
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇4.4.5 使用sort()算法 下一篇4.5.1 向量的增长

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: