假设我有一个第三方DLL,它通过类Foo
公开功能。 Foo
希望我通过定义实现接口IBar
的类来提供回调。
我需要从我创建的DLL调用这个第三方DLL,而后者又从核心可执行文件中调用。所以我的DLL包含这样的代码:
class MyBar : public IBar
{
public:
// Implement the Frobble method of IBar
virtual void Frobble() override
{
// ...callback code here...
}
};
// Entry point from core executable
extern "C" __declspec(dllexport) void DoStuff()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
MyBar myBar;
Foo thirdPartyFoo;
thirdPartyFoo(myBar);
}
我是否需要在AFX_MANAGE_STATE
内再次致电MyBar::Frobble
?