VS2015+QT编程-自定义插件类

一、插件的概念

插件的本质其实就是动态库,或者说是一种升级版的动态库。动态库的功能就是使用dll去保存有着功能的API,让其他人可以使用你封装的函数,且在后续动态库的迭代更新时,只需要将dll更新即可,但是如果在你的项目中包含了动态库的lib,而却缺少对应库的dll文件时,软件则无法使用。而插件在此基础上多了一个功能正式在你不使用该库的函数时,可以不需要去包含对应库的dll文件,不会影响软件的其他功能使用。

插件的优点:

1、在不使用插件内容时,可以不需要去包含插件动态库文件。

2、便于拓展更新、低耦合、面向接口,对于大型系统来说,可以多人同时开发,互不干扰。

二、插件的框架

要实现一个插件的框架比如包含如下三项

1、插件的定义。此部分为插件的基类,里面需包含和你导出类一样的所有函数,此时导出的函数才可正常使用。
2、导出类。此部分为继承插件基类的子类,里面包含了具体在外面使用的函数及其具体功能的实现。

3、测试demo。这部分为测试插件功能是否正常。

三、示例用法

1、插件的定义

 此类需自定义插件ID,并声明告诉QT为插件的纯虚类,并且使用虚函数声音一下需要导出的函数。

2、导出类

 此类为插件的导出类,需要对插件基类定义的虚函数进行重写实现。

3、测试类

 在使用插件的时候,一般将其放于子文件夹中,使用遍历该文件夹的方式去将子文件夹中的全部文件加载,若插件存在则会被成功创建,若缺少插件文件,则该插件的函数无法使用,但不影响软件的其他使用。

插件使用成功。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值