诶。我们刚刚使用了dlopen和必须在 dll 中定义dlsym的一对extern "C" static函数
extern "C" static plugin* create( arg_pack* );
extern "C" static errno_t destroy( plugin* );
Run Code Online (Sandbox Code Playgroud)
让插件管理器查找“.dll”或“.so”文件并将它们加载到
map<string, pair< plugin*(*)(arg_pack*), errno_t(*)(plugin*)> >
然后,您可以根据名称(上面的字符串)查找插件并获取它的“构造函数”或“析构函数”
另见:gmodule