c++ functional頭文件 bind1st用法
1 #include <iostream>
2 #include <vector>
3 #include <algorithm>
4 #include <functional>
5
6 int main()
7 {
8 std::vector<int>myvector;
9
10 myvector.push_back(11);
11 myvector.push_back(2);
12 myvector.push_back(16);
13 myvector.push_back(1);
14 myvector.push_back(18);
15
16 auto ib = myvector.begin();
17 auto ie = myvector.end();
18
19 for (; ib != ie; ib++)
20 {
21 std::cout << *ib << std::endl;
22 }
23 std::cout << std::endl;
24
25 auto ifind = find_if(myvector.begin(), myvector.end(), std::bind1st(std::greater<int>(), 3));//bind1st綁定一個函數,greater也是函數,比大小
26 //作用:從頭到尾,查找比3小的第一個元素
27 //用途,查找不及格的人
28
29 std::cout << *ifind << std::endl;
30
31 return 0;
32 }