これはC固有の質問です。私は可能な限りすべてを翻訳単位の境界内に保ち、.h
ファイルを介していくつかの関数のみを公開することを試みています。つまり、static
ファイルレベルのオブジェクトへのリンクを提供しています。
ここで、いくつかの関数を他のモジュールから呼び出す必要がありますが、直接呼び出す必要はありません。私のモジュール/ファイル/翻訳ユニットは他のモジュールにサブスクライブし、関数へのポインターを渡します。次に、特定のイベントが発生すると、いくつかの引数を指定してポインターが呼び出されます。
したがって、これらの関数があいまいな場所から呼び出されていることを非常に明確にする方法を知りたいと思います。
- 彼らは、あるべき
static
かextern
(及び、それらを公開しますか.h
)? - 関数の名前にいくつかのヒントを含める必要がありますか?
- それとも、「Xから呼び出されました」というコメントで十分ですか?