3

是否可以将函数定义作为参数传递,如果可以,其语法是什么?如果不是,那是什么原因?我想做类似的事情:

double arr1[10], arr2[10];

std::equal(arr1, &(arr1[5]), arr2, (bool(*)(double a, double b){return a == -b;});
4

1 回答 1

5

您可以为此使用 lambda:

std::equal(arr1, arr1 + 5, arr2, [](double a, double b) { return a == -b; });
于 2013-03-29T10:56:39.067 回答