醜いインタビューの質問: C++ で文字へのポインターを返す関数へのポインターを返す関数への N 個のポインターの配列をどのように宣言しますか? typedef の有無にかかわらず表示します。
関数がパラメータを取らないとしましょう。
私はtypedefで正しいですか?
typedef char* (*f1)();
typedef f1 (*f2)();
f2 a[N];
醜いインタビューの質問: C++ で文字へのポインターを返す関数へのポインターを返す関数への N 個のポインターの配列をどのように宣言しますか? typedef の有無にかかわらず表示します。
関数がパラメータを取らないとしましょう。
私はtypedefで正しいですか?
typedef char* (*f1)();
typedef f1 (*f2)();
f2 a[N];
typedef char *(*(*foo[])())();
しかし、私はここで @Xploit に完全に同意します。これは絶対に書かないでください。
文字へのポインタを返す関数:
typedef char * (*fpc)(void);
文字へのポインタを返す関数へのポインタを返す関数:
typedef fpc (*fpa)(void);
関数へのポインタを返す関数への関数ポインタの配列 文字へのポインタを返します:
fpa my_array[N];
非 typedef バージョンは OP に任せます。typedef を追放する理由はないはずです。