0

我有一个功能

bool(*p)(const vector<int>&, int)

是论据之一。我知道它被用来调用其他两个函数之一,但我似乎无法弄清楚如何实际调用它(为调用错误获取一个不匹配的函数)。我目前有

myFunct(i, j, myFunct2(i, 0);

任何帮助表示赞赏。

4

2 回答 2

2

那些奇怪的东西声明了一个名为的参数p,它需要是一个指向函数的指针。指向的函数p需要接受两个参数,第一个是对 int 向量的 const 引用,第二个是 int。函数p指向需要返回一个布尔值。如果您在某处具有以下形式的功能:

bool foo(const vector<int>& a, int b);

然后你可以通过&fooas p。您不应提供 avector<int>int; 你传递p给的函数会处理这个问题。

于 2013-09-12T03:18:19.007 回答
0

这个参数是一个指向函数的指针。if 应该只使用函数名作为参数

例子:

bool myFunct2(const vector<int>& a, int b) { ... };
myFunct(i, j, &myFunct2); // you passing myFunct2 to your functuin
于 2013-09-12T03:18:56.730 回答