私は混合モードで作業しています (1 つのアセンブリで C++ と C++ を管理しています)。私はこのような状況にあります。
ManagedStructure ^ managedStructure = gcnew ManagedStructure();
//here i set different properties of managedStructure
次に、以下の「メソッド」を呼び出して「& managedStructure」に渡します
Method(void *ptrToStruct)
{
ManagedStructure ^ managedStructure2 = gcnew ManagedStructure();
memcpy(&managedStructure2 , ptrToStruct, sizeof(managedStructure2 ));
}
このシナリオについて次の質問があります。
1) このように memcpy を使用しても安全ですか? そうでない場合、同じ機能を実現するための代替手段は何ですか? (「メソッド」の定義を変更することはできません)
2) 両方の構造が管理されているため、メモリを解放していません。大丈夫ですか?