Qt和C ++ QtPlugin - 可以处理哪种插件?

时间:2014-03-06 11:38:53

标签: c++ qt plugins multiplatform

我即将创建一个应用程序。我想将它保留在模块化架构中,并在Linux,Mac和Windows上运行。我想一般使用Qt库。

此应用程序的大多数功能都将存储在插件中,由于某些原因,这是最好的方法。我习惯在C ++上创建插件。不过我正在考虑使用Qt插件管理系统。

我的问题是:

  1. 此系统可用于管理任何类型的插件吗?我的意思是大多数(我都遇到过)的例子涵盖了关于Qt样式和Qt元素等的插件。没有像“Foo”插件那样做“hello world”的通用插件管理。

  2. 与Qt插件系统相比,“手动创建”的纯C ++插件系统有什么优势吗?我是否应该考虑使用纯C ++方法?

1 个答案:

答案 0 :(得分:1)

Qt提供了一个通用的插件系统,您可以将其用于您想要的任何用途。 documentation涵盖了它。

Qt的低级插件api适用于接口类 - 具有抽象虚方法的类。插件实现了这样的接口。插件加载器为您提供了一个实现接口的接口派生类的实例。