0

私はこの配列を初期化するのに忙しいです:

int menuNumber2FunctionDbase[]= { &functionA , &functionB , &functionC };

しかし、次のようになります: menuNumber2FunctionDbase の初期化に近い および: 互換性のないポインター型からの初期化

私は試してみましたがint*functionA代わりに&functionA

私は何を間違っていますか?

4

3 に答える 3

0

を使用するstd::functionと、グローバルな独立関数だけでなく、C++11 ラムダまたは (の助けを借りてstd::bind) メンバー関数も使用できます。

std::function<void()> menuNumber2FunctionDbase[] = {
    functieA, functieB, functieC
};
于 2013-09-21T14:03:46.010 に答える
0

解決しました!あなたたちは素晴らしいです!

私が変更したのは次のとおりです。void (*menuNumber2FunctionDbase[])() = { functieA , functieB , functieC };

typdef を使用した他のオプションも素晴らしいですが(near initialization for 'menuNumber2FunctionDbase[2]')、警告として: が表示されます

魔法のように動作します!どうもありがとう!

于 2013-09-21T13:51:16.740 に答える