广泛应用(带插件)

时间:2010-02-02 14:22:29

标签: c++ plugins

我将使我的应用程序可扩展。 我在哪里可以阅读有关编写支持插件的程序的信息? C ++

2 个答案:

答案 0 :(得分:1)

你最好的选择是看Lua之类的东西。它允许您拥有跨平台插件和加载代码,而无需启动和重新启动应用程序。 C ++中的动态代码加载是非常特定于平台的,不可移植而无需大量工作。

答案 1 :(得分:1)

您需要查看和阅读插件架构。除了提供一些流浪链接之外,SO答案无济于事。我将尝试尽可能简短地解释:通常,插件是主机应用程序加载的一组动态库(通常在启动时,有时为了提高效率而延迟加载)。然后,它们成为应用程序的一部分,并且表现得好像它们是本机/核心组件。因此,您需要重新考虑应用程序的体系结构和模块设计。以下是您需要回答的一系列问题:

  • 你称之为核心?
  • 您希望插件做什么?
  • 插件需要哪些核心功能?
  • 如果您的应用程序是跨平台的,那么您需要确保您的插件API也是跨平台的 - 这通常涉及一些工作。
  • 您是否希望插件修改UI?这开启了一整套惊喜。