でのif-else文を避けてください、私はこのようないくつかのコードがある場合:は、テンプレート関数
void function_1(...)
{
//do something
}
void function_2(...)
{
//do something
}
int function_3(...)
{
//do something
}
int main()
{
....
if (CONSTANT_1) function_1()
else if (CONSTANT_2) function_2()
else if (CONSTANT_3) function_3()
....
}
を私がもし-else文を避け、メイン機能では、このような何かをたいと思います:
int main()
{
function<CONSTANT>();
}
if-else文の使用を避け、この動作をシミュレートできますか?
テンプレートを使用する必要がありますか?そうでない場合は、定数と関数ポインタのマップを使用できます。次に、与えられた定数に対してmapから取得した関数を呼び出します。 – uptoNoGood