【发布时间】:2008-10-08 14:55:34
【问题描述】:
我有非托管 C++ 通过 Marshal::GetFunctionPointerForDelegate 提供的函数指针调用托管委托。该委托有可能引发异常。我需要能够在我的非托管 C++ 中正确处理此异常,以确保诸如指针清理之类的事情,并可能将异常重新抛出到更多托管代码中。调用栈类似这样:
托管代码 -> 非托管 C++ -> 通过委托回调托管代码(此处可以抛出异常)。
任何人都有正确处理这种情况的指针,以便可以清理非托管代码中的资源并将可用异常抛出到启动整个调用堆栈的托管代码?
【问题讨论】:
标签: c++ .net exception delegates managed-c++