次のように構造体定義を使用する従来の C 関数があります。
struct{
float _schedulerRate;
}sched_;
#define sched_1 sched_;
// bla bla bla
myFunc(bla bla bla) {
// Lots of bla bla bla
someVar = some_complicated_equation/sched_1._schedulerRate;
// More bla bla bla
}
sched_1._schedulerRate
この関数は、何らかの形で要素に割り当てられた引数を受け入れません。extern
また、このリンケージは sturct 定義をサポートしているため、 を使用して構造体を定義できないことも知っています。
問題は、単体テストを行うときに、 this の値を設定する必要があることですsched_1._scheduerRate
。これどうやってするの?これは正常に実行されるレガシー コードですが、そのモジュールの 1 つをサイド プロジェクトに統合しようとしています。
私は C/C++ プログラミングの経験が 1 年半しかないので、いくつかの手品を知らないのかもしれません。しかし、初心者ユーザーの視点から見ても、これを行うのはほとんど不可能に思えます。ただし、これはレガシー コードであり、機能します。どのように私は知りません。