そのため、ファームウェア用の「クイック アンド ダーティ」プロファイラーに取り組んでいます。一部の機能にかかる時間を知る必要があるだけです。ロギングはコストがかかるため、毎回かかる時間を単純に印刷すると結果が歪められます。そのため、一連の結果を配列に保存し、しばらくしてからダンプしています。
1 つのコンパイル ユニット (1 つのソース ファイル) で作業しているときは、結果を格納する静的配列がたくさんありました。ここで、複数のファイルにわたってこれを行う必要があります。コードを「コピーして貼り付ける」ことはできますが、それは醜いだけです(我慢してください)。別のコンパイル ユニットにタイミング コードを配置し、静的変数を作成し、ヘッダー ファイルにアクセサー関数を提供すると、それらの静的変数にアクセスするたびに関数呼び出しのオーバーヘッドが発生します。
コンパイル単位の静的変数に直接アクセスすることは可能ですか?
私は常にグローバル変数を使用せずにデータをカプセル化しようとしましたが、この状況では単に速度の問題からカプセル化が必要です。
これが理にかなっていることを願っています!ありがとうございました!
編集:わかりましたので、私が求めていることは不可能のようです。本質的に別のコンパイル単位のデータに直接アクセスできるようにする代替手段を見つけた人はいますか?
EDIT2:パブロとジョナサンの回答ありがとうございます。私の状況では(ジョナサンによると)静的データへのポインターを取得する明確な場所がなかったため、最終的にパブロを受け入れることになりました。再度、感謝します!