关于 find_first_of(beg1, end1, beg2, end2, op)

以你之姓@ 2022-03-27 06:26 96阅读 0赞

侯捷翻译的STL标准库描述, find_first_of(beg1, end1, beg2, end2, op);返回第一区间中第一个这样的元素:该元素和第二区间内每一个元素执行op结果均为true。测试发下则不是这样。测试代码如下:

  1. bool find_first_of_op(int m, int n)
  2. {
  3. return m >= n;
  4. }
  5. void test_find_first_of()
  6. {
  7. std::vector<int> srcColl;
  8. std::deque<int> desColl;
  9. insert_elements(srcColl, 3, 17);
  10. insert_elements(desColl, 12, 13);
  11. print_elements(srcColl);
  12. print_elements(desColl);
  13. std::vector<int>::iterator pos = std::find_first_of(srcColl.begin(), srcColl.end(),
  14. desColl.begin(), desColl.end(), find_first_of_op);
  15. std::cout<<*pos<<std::endl;
  16. }

输出结果为12,表示只需第二区间内存在一个满足op为true的元素即可。是否正确,有待验证…..

发表评论

表情:
评论列表 (有 0 条评论,96人围观)

还没有评论,来说两句吧...

相关阅读

    相关 mysqlpid ended

    mysql 分组排序,pid为 n 的行 跟在 id 为 n 的行后面 题主的这个排序需求,用SQL来解决,其难度的确比较大,不过经过特殊的排序安排还是可以解决的。请参考