有没有办法将函数传递给另一个函数,在这个函数中,传递函数将在第二个函数内调用,并传递给定参数。但是,传递的函数可以有不同的参数。
我不想用调用函数内部的数据运行函数,只是调用执行实际调用的函数时传递的参数。基本上是定期检查,看看是否可以继续。
我尝试做的一个例子:
bool CheckSomething1 (int a, int b) { /* some code */ }
bool CheckSomething2 (int a, int b, int c) { /* some code */ }
bool WaitForTrue ( something funct something.. )
{
while (! funct) {
/* do some work */
}
}
int _tmain(int argc, _TCHAR* argv[])
{
WaitForTrue(CheckSomething1(1, 2));
WaitForTrue(CheckSomething2(1, 2, 3));
return 0;
}
编辑:基本上我正在寻找一种方法将一个具有不同类型参数的函数传递给另一个函数并运行它,但每次传递它们时调用的参数可能不同,但在传递函数时保持不变。