1

__declspec(dllexport)是否可以在没有 MSVC 2015 中涉及的预处理器的情况下动态创建'ed 函数?

我正在为某种测量软件创建一个 DLL插件创建工具包,并希望使以后的客户端程序员能够在 中的插件中添加某种“额外功能” DllMain,例如:

// Create a new instance of the custom driver
MyPluginDriver *myPluginDriver = new MyPluginDriver();

// Assign it to the core DLL
pluginCore.addDriver(myPluginDriver);

对于每个这样的addDriver调用,DLL 稍后必须提供一个回调函数,其名称可以自由选择。主应用程序期望在另一个回调中通过请求传递这些函数的名称。

那么,在没有's 和其他东西的情况下extern "C"动态生成这些函数的“最佳实践”是什么?#define

也许某种Lambda方式?

编辑:我想我忘了提到它是一种商业上可用的测量软件,我正在为此编写 PDK。它是一个固定接口(也是一个相当复杂的接口),由应用程序硬编码和预期的函数名称组成,用于一般回调。只有特定的回调期望某些函数名称调用与此处相关的测量周期。

4

0 回答 0