私は別の関数に引数として渡された関数を呼び出す必要があり、最初に必要な引数を渡さなければなりません。これは、出力をsould引数に渡された関数を、Dで既に与えられたパラメータで呼び出す方法は?
#include <iostream>
#define CALL(x) x; \
std::cout << "Called!" << std::endl;
void foo(int a, int b)
{
std::cout << a * b << std::endl;
}
int main()
{
CALL(foo(9, 8)); // I want to pass 2 int parameters inside 'foo' function call
system("PAUSE");
}
:C++のでは、この問題は、マクロで解決されて正確に、私はすべてのアイデアD.で関数を呼び出す必要があるか
> 72
> Called!
?
編集:私は、私のようなCALL内部の「foo」という呼びたい、これはD.で行う必要があり :
CALL(foo(9, 8)) // and not like: CALL(foo, 9, 8)
をしかし、私は、これはとおそらくD.で達成されるのか分かりません混入します?
DかC++についての質問ですか? – YSC
* "C++では、この問題はマクロ" *で解決されています。これは良い方法ではありませんが、テンプレートの方が優れています(構文は少し異なります)。 – Jarod42
@YSC申し訳ありませんが、明確でない場合はDです。私はC++でどのようにしたかの例を示しています。 –