C(++) (AVR-Gcc) で組み込みシステムにメニューを実装する際に、引数を取り、通常はそれらを使用する void 関数ポインターになってしまいました。
// void function prototype
void (*auxFunc)(char *);
場合によっては (実際にはかなりの数)、関数は実際には引数を必要としないため、次のようにします。
if (something) doAuxFunc(NULL);
別の関数型にオーバーロードできることはわかっていますが、複数のオブジェクトをインスタンス化し、それらを軽量に保ちたいため、実際にはこれを行わないようにしています。
NULL ポインターを使用して複数の関数を呼び出すことは (実際のポインターを対象としている場合)、より多くの関数プロトタイプを実装するよりも悪いことですか?