C++/CLI プロジェクト内でマネージド System.Action をアンマネージド std::function に変換しています。コールバックを使用した後、指定された IntPtr を解放する必要がありますか?それとも不要ですか?
void MyClass::Execute(System::Action^ callback)
{
IntPtr callbackPtr = Marshal::GetFunctionPointerForDelegate(callback);
std::function<void (void)> nativeCallback = static_cast<void (__stdcall *) (void)>(callbackPtr.ToPointer());
m_nativeObject->Execute(wrappedCallback);
// should I release callbackPtr here?
}