关于Qt 两个.cpp文件相互调用各自的函数

原创 2016年05月30日 10:33:38

最近在用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:
     MainWindow *mainwindow;
这样在
agvcommuication.cpp文件中在需要调用函数之前添加代码  mainui=mainwindow  在mainui->所需的函数就可以盗用mianwindow下的函数了,此时函数的定义为public

同样的方法在mainwindow.cpp文件写可以调用agvcommuication.cpp的函数



版权声明:本文为博主原创文章,未经博主允许不得转载。

Qt中一个.cpp类的函数调用另一个.cpp中类的函数的方法

Qt 下面经常会用到一个函数调用的时候会调用到另一个函数,如果这两个函数在两个.cpp文件中,那么应该怎么调用呢? 假设在B类点击一个按钮会调用A类的一个函数,实际上只需要: 一. 在B的构造函数...
  • hanzhen7541
  • hanzhen7541
  • 2017年10月17日 14:14
  • 777

qt中一个ui中的widget与另一个ui中的dialog之间的交互

这次是用qt做一个ini文件参数配置的工具。 其中有一个功能是,点击widget中的添加按钮,弹出dialog,人工写入标识,进行动态库添加,按dialog中的确认按钮,写入ini配置文件。此时还需...
  • wangshenweiwu
  • wangshenweiwu
  • 2017年09月19日 11:07
  • 871

Qt中moc问题(qt moc 处理 cpp)

我用的是QT Designer,一般只有用到信号signals和槽slots时才会用到MOC,因为采用信号signals和槽slots是QT的特性,而C++没有,所以采用了MOC(元对象编译器)把信号...
  • u012135652
  • u012135652
  • 2015年11月27日 14:54
  • 1266

Qt例程代码分析之basicshapes-cpp

简单分析了Qt例程中的basicshapes-cpp,通过阅读代码来学习如何在widget显示模型以及控件和场景的交互,继续更新......
  • TurboIan
  • TurboIan
  • 2017年03月10日 00:38
  • 666

Qt如何在main.cpp里面添加connect函数

SIGNAL和SLOT的对象都不能用A a;的方式来创建,而应该用A *a = new A;的方式来创建。 因为在main.cpp里面调用connect,一般都是两个类之间的通讯,而用栈的方...
  • u012423865
  • u012423865
  • 2016年06月06日 17:24
  • 1322

Ⅰ.2.2 如何调用Qt对象的函数

使用Squish有可能调用任何Qt对象的每个公开的函数。另外也有可能调用Qt提供的静态函数。 下面的例子中我们改变button的text,在上一部分中使用QButton::setText函数查询该bu...
  • dzh0622
  • dzh0622
  • 2015年11月17日 08:54
  • 719

Qt中多对多关系类调用

之前一直做C的开发,什么东西都是自己想出来自己实现,很少去找已经实现的类库,最近做一个管理Led灯的程序。用C的思路实现功能简单,但是健壮就遇到了不少问题,想通过数据结构来解决,发现Qt中正好有这种想...
  • qianguozheng
  • qianguozheng
  • 2015年06月13日 09:54
  • 927

qt 将.ui文件生成.h或.cpp文件

生成步骤: 1、将.ui文件复制到与uic.exe同一文件夹中 2、在计算机开始中打开cmd 3、输入一下命令: cd ***(文件夹位置路径) uic ***.ui -o ***.h (生...
  • xiaotingting_
  • xiaotingting_
  • 2017年06月27日 20:31
  • 537

C++ 保存在两个cpp文件中函数,怎样声明才能互相调用?

主函数所在cpp: #include "menu_1.cpp" #include "menu_2.cpp" void main(){ char choice; do{ choice=_ge...
  • educast
  • educast
  • 2012年07月25日 11:30
  • 8662

qt中在不同类间传递参数的几种方式

刚开始我通过构造函数传递参数,能成功传递但数据却不会自动更新。随后想到通过全局变量传递参数。一般来说在多个源程序间传递变量大概有两种方法,一是利用extern声明全局变量来进行传递,二是将全局变量定义...
  • wangliang0633
  • wangliang0633
  • 2017年03月15日 08:47
  • 1210
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于Qt 两个.cpp文件相互调用各自的函数
举报原因:
原因补充:

(最多只允许输入30个字)