平时都没写东西的习惯,现在开始从事软件开发工作,觉得遇到问题的时候写点总结蛮好的,便于以后备忘并提醒自己别犯同样的错误。
在最近的项目中主要碰到一下几个问题:
1.qt调用其他编译器编译得到的动态库文件.dll中库函数问题;
2.回调函数在自定义类中实现需要定义为类的静态成员函数问题;
3.类的静态成员函数(还是回调函数时),怎样调用类的非静态成员问题;
4.多线程中,不同线程间如何实现相互通信问题;
问题1简答:
qt类库中QLibrary就是用于解决qt调用动态库.dll问题,假设有一动态库文件为dllName.dll,其中有一库函数为 int add(int x,int y);
加载动态库及获得库函数函数指针代码如下:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21#include ... typedef int (*AddFunc)(int x,int y);//定义函数指针类型 AddFunc subAdd = NULL;//定义函数指针变量 int main(int argc,char *argv[]) { QApplication app(argc,argv); QLibrary dllLib("dllName.dll"); if(!dllLib.load()) { return -1; } else { subAdd = (AddFunc)dllLib.resolve("add"); if(subAdd == NULL) { return -1; } else {
最后
以上就是糊涂小猫咪最近收集整理的关于Qt学习之---项目实战的全部内容,更多相关Qt学习之---项目实战内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复