//普通函数
bool fun(int& a)
{
return (a - 2) == 0;
}
//函数类
struct Fun
{
bool operator()(int&a)
{
return (a - num) == 0;
}
int num;
Fun(int n) :num(n){}
};
int main()
{
vector<int>dds = { 1, 2, 3 };
//调用普通函数
vector<int>::iterator it1 = find_if(dds.begin(), dds.end(), fun);
//调用函数对象
vector<int>::iterator it2 = find_if(dds.begin(), dds.end(), Fun(2));
//使用lambda表达式生成函数对象
int n = 2;
vector<int>::iterator it3 = find_if(dds.begin(), dds.end(), [n](int a){return (a - n) == 0; });
return 0;
}
c++函数作为参数的3种传参方法
最新推荐文章于 2023-10-22 21:04:34 发布