最近在用Qt 编写一个项目的界面,想再两个.cpp文件相互调用彼此的函数 一种方法就是connect函数,在一个文件中写信号函数,在另一个文件中写槽函数,注意connect函数要放在发送信号之前。第二种方法就是定义一个全局变量
步骤为:新建一个.h文件 命名为global.h 再新建一个.cpp文件 命名为global.cpp
在global.h 文件中添加:
#ifndef GLOBAL
#define GLOBAL
#include "agvcommuication.h"
#include "mainwindow.h"
extern MainWindow *mainui;
extern agvCommuication *agvcommui;
#endif // GLOBAL在global.cpp文件中添加:
#include "global.h"
agvCommuication *agvcommui;
MainWindow *mainui;
在 "agvcommuication.h"以及 "mainwindow.h"中分别包含该#include "global.h"
在 "agvcommuication.h"中:
class MainWindow;
private:agvcommuication.cpp文件中在需要调用函数之前添加代码 mainui=mainwindow 在mainui->所需的函数就可以盗用mianwindow下的函数了,此时函数的定义为publicMainWindow *mainwindow;这样在
同样的方法在mainwindow.cpp文件写可以调用agvcommuication.cpp的函数