最近我一直在尝试Qt4框架提供的插件框架,它工作得很好。然而,有一件事我不确定。
在所有示例中,实现的接口(实际的插件)都有可用的源代码(实现接口的人可以访问接口源代码)。这不是问题,但我真正想做的是通过共享库或类似的东西公开接口。
我的目标是只给第三方开发人员一个共享库文件,然后他们可以在代码中“导入”(请原谅Java术语),为应用程序创建插件。这类似于用Java语言给出一个.jar文件,然后开发人员就可以导入它。
这背后的原因不是为了隐藏源代码,因为它是一个开源项目,而是为了简单起见。此外,该程序非常依赖于保持它们的方式的接口,以便来自不同第三方的插件可以相互通信。如果他们弄乱了实际的接口,它就会崩溃。
如果您能在正确的方向上推动,我将不胜感激。
谢谢!
发布于 2010-12-01 17:52:19
C++不允许像Java那样多的自省,因此您不能只是发布“二进制文件”并从中推断接口。在C++中,您需要接口(头文件)的文本描述。
想要为您的应用程序开发插件的人需要有权访问
插件开发人员通常不会弄乱所提供的头文件(至少他们不应该),因为你在你的帖子中提供了这个原因。
https://stackoverflow.com/questions/4321844
复制相似问题