// 函数指针适配 // 使用 ptr_fun<>() 适配函数指针 // <> 中的第一个参数是函数指针的类型,第二个参数是函数指针的参数类型,第三个参数是函数指针的返回值类型 // bind1st() 和 bind2nd() 适配函数对象 #include #include #include using namespace std; bool gtn(int n1, int n2) { return n1 > n2; } int main() { int m[] = {1, 2, 2, 3, 5, 10}; vector v; v.assign(m, m + sizeof(m) / sizeof(m[0])); vector::iterator ret = find_if(v.begin(), v.end(), bind2nd(ptr_fun(gtn), 3)); cout << *ret << endl; return 0; }