関数ポインタをその関数に渡すことによって、ファイルの1つから関数を公開したいとします。その機能を次のように宣言しても安全static
ですか?関数はそのファイルに固有であると宣言されているので、コンパイラーは私の関数ポインターを無効にする、またはそのファイルのコンテキスト外でそれを無意味にする柔道を行うことを許可されていますか?
私のコードではありませんが、私が言っていることの(ばかげた)例:
void static cool_function(void);
void extern (*cool_function_ptr)(void); // Actually, I’m not sure of where the `extern` goes in a function-
// pointer declaration. Damn you, confusing function-pointer syntax!
そのコード(またはその構文的に正しい近似)を考えるとcool_function_ptr
、別のファイルからアクセスすることは違法でしょうか?