次のような、1 秒間に 10 回呼び出される関数があるとします。
void RxData(System::Byte *Data){}
この関数では、構造体に *Data を入力します。構造体は次のようになります。
Struct datastr{
float first;
float second;
}
パフォーマンスとメモリ使用の観点からは、extern 変数を宣言してから次のことを行う方が適切ですdatastr str1
。
void RxData(System::Byte *Data){str1=*reinterpret_cast<datastr*>(Data);}
または、次のように構造体を毎回再初期化します。
void RxData(System::Byte *Data){datastr str1; str1=*reinterpret_cast<datastr*>(Data);}
誰かがメモリ管理の違いを説明できますか? 私は 2 番目のオプションの方が「クリーン」であると考える傾向がありますが、その理由について議論することはできません。