QT 动态链接库的创建与使用
在vs中 新建工程 Qt Library
然后填写各种实现 最后编译会生成 *.dll *.lib 文件。
在另一个项目里使用该动态链接库文件的时候, 添加 *.h 头文件。 注意:不要在项目中 “添加已存在文件”的方式引入库头文件。 否则编译时会产生错误。“ error: definition of static data member 'A::staticMetaObjectExtraData' of dllimport'd class” 类似这样的错误。百度了一下:
http://bbs.csdn.net/topics/390026197
“隐式调用的时候我们一般在工程树中将需要的动态库头文件添加到工程中:
HEADERS += mainwindow.h \
ScopeWidget.h
这样导致ScopeWidget.h的全局引用,由于从QWidget继承,所以编译的时候会生成moc_ScopeWidget.cpp文件,导致如上错误。
解决办法是将ScopeWidget.h从工程树中移除,只在用到的地方引用。”
按照上面的说法,只在用到库的地方,引用库头文件就可以了!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步