是否可以将函数定义作为参数传递,如果是,那么它的语法是什么?如果不是,那会是什么原因?我想做点什么:
double arr1[10], arr2[10];
std::equal(arr1, &(arr1[5]), arr2, (bool(*)(double a, double b){return a == -b;});
答案 0 :(得分:5)
你可以使用lambdas:
std::equal(arr1, arr1 + 5, arr2, [](double a, double b) { return a == -b; });