0

コールバックを格納する変数があるとします。

void* (*function)(int, double);

ここで、このコールバックを返す関数を作成したいと思います。ユーザーがコールバックに直接アクセスするのではなく、関数によってアクセスする必要があります。これは機能しません:

void* (*)(int, double) getCallback();

私の質問は次のとおりです。そのような関数のプロトタイプはどのようになりますか?

4

2 に答える 2

5

typedefコールバック タイプ:

typedef void* (*pf)(int, double);

pf getCallback();

これにより、間違った署名などを手動で入力することによる間違いがなくなります。

于 2012-07-10T08:26:14.460 に答える
4

さて、これの直接的な構文は

void* (*getCallback())(int, double);

しかし、おそらく typedef を使用する方がより適切で読みやすいでしょう:

typedef void* (*CallbackFunc)(int, double);

CallbackFunc getCallback();
于 2012-07-10T08:28:12.673 に答える