Я работаю в смешанном режиме (управляемый 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) Я не освобождаю память, поскольку обе структуры управляются. Это нормально?