转:https://blog.csdn.net/caoshangpa/article/details/51104022

一、使用extern关键字

cglobal.h

  1. #ifndef CGLOBAL_H
  2. #define CGLOBAL_H
  3. extern int testValue;
  4. #endif // CGLOBAL_H

cglobal.cpp

  1. #include "cglobal.h"
  2. int testValue=1;

调用方式

  1. #include "cglobal.h"
  2. #include <QDebug>
  3. qDebug()<<testValue;
  4. testValue=2;
  5. qDebug()<<testValue;

二、使用static关键字

cglobal.h

  1. #ifndef CGLOBAL_H
  2. #define CGLOBAL_H
  3. class CGlobal
  4. {
  5. public:
  6. CGlobal();
  7. ~CGlobal();
  8. public:
  9. static int testValue;
  10. };
  11. #endif // CGLOBAL_H

cglobal.cpp

  1. #include "cglobal.h"
  2. CGlobal::CGlobal()
  3. {
  4. }
  5. CGlobal::~CGlobal()
  6. {
  7. }
  8. int CGlobal::testValue=1;

调用方式

  1. #include "cglobal.h"
  2. #include <QDebug>
  3. qDebug()<<CGlobal::testValue;
  4. CGlobal::testValue=2;
  5. qDebug()<<CGlobal::testValue;

建议使用第二种方式

全局变量的使用【C++/Qt】的更多相关文章

  1. QT编程之——使用全局变量

    在Qt中使用全局变量的实例 1.首先须要在一个头文件里对全局了变量使用exern方法进行定义. //g.h extern char *testStr; 2.仅仅能在cpp文件里对事实上例化,而且实例化 ...

  2. Qt:用 __thread 关键字让每个线程有自己的全局变量

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/wsj18808050/article/d ...

  3. QT中全局变量的定义

    多的就不说了,本来就是一个简单地内容,只是不会的话会很头疼 我们首先新建两个文件,文件名可以自定义,我们在这里定义为variate.h 和 variate.cpp 当然了,后缀是不能变的. 和函数一样 ...

  4. Qt static关键字全局变量

    创建全局变量.h文件 globalvariable.h #ifndef GLOBALVARIABLE_H #define GLOBALVARIABLE_H #include <QImage> ...

  5. QT 声明全局变量

    声明 qdatabasemanager.h #include"qdatabasemanager.h" externQDatabaseManager*Database; 引用 mai ...

  6. QT入门

    QT += core gui widgets //引入需要用到的库 qDebug()<<"t="<<t<<QTime::currentTime( ...

  7. QT编写上位机程序一定要初始化变量以及谨慎操作指针

    背景: 在编写QT上位机界面时,界面在运行的时候经常出现卡死或者直接挂掉的怪现象. 正文: 上位机有个函数为check_receive():该函数的作用为定时调用循环检测USB是否有数据.若有,则将信 ...

  8. [转] - QPixmap全局变量载入多张图片失效问题

    我想qt 中QPixmap这个类大家都很熟悉,它可以很简单的在标签上贴图:例如: QPixmap p; p.load("1.png"): label->setPixmap(p ...

  9. Qt中单例模式的实现(4种方法)

    最简单的写法: 12345 static MyClass* MyClass::Instance(){ static MyClass inst; return &inst;} 过去很长一段时间一 ...

随机推荐

  1. 【mysql】查看版本的四种方法

    1:在终端下:mysql -V. 以下是代码片段: [test@login ~]$ mysql -V mysql Ver 14.7 Distrib 4.1.10a, for redhat-linux- ...

  2. 【python系列】SyntaxError:Missing parentheses in call to 'print'

    打印python2和python3的区别 如上图所示,我的 PyCharm安装的是python3.6如果使用print 10会出现语法错误,这是python2.x和python3.x的区别所导致的.

  3. LeetCode——Submission Details

    Description: Given a string of numbers and operators, return all possible results from computing all ...

  4. js的字符串charAt()方法

    //字符中的字符从左向右进行索引,由0开始,字符串中的空格也算在内 var string = "charAt find word position"; document.write ...

  5. myBatis调用postgreSQL存储过程

    1.调用没有OUT参数的存储过程: 创建存储过程: create or replace function get_code(a1 varchar(32)) returns varchar(32) as ...

  6. Linux更换jdk版本,java -version还是原来的版本问题

    服务器上默认安装版本是: 使用jenkins最新的安装包 2.73.1,启动报错52.0!需要使用1.8进行启动. 两种方式,要么tomcat直接指定,要么修改环境变量,这里我使用修改安装java版本 ...

  7. 【SharePoint 2010】将Sharepoint Server 2010部署到WINDOWS 7

    1.部署-安装环境: 在这里先说明一下:2007的版本中我们只能装在WINDOWS 2003 SERVER 上,这种限制在2010被彻底打破了.我们可以将它安装在VISTA/WINDOWS 7/SER ...

  8. 利用trace重建控制文件

    以下步骤,内容都在ora11g_ora_.trc文件中 CREATE CONTROLFILE REUSE DATABASE "ORA11G" NORESETLOGS  ARCHIV ...

  9. 强连通分量+缩点(poj2553)

    http://poj.org/problem?id=2553 The Bottom of a Graph Time Limit: 3000MS   Memory Limit: 65536K Total ...

  10. EF的使用(DbContext对象的共用问题)

    1.问题的引入 对于某一个数据库的EF操作对象,当执行某一次请求的时候,可能会多次操作数据库,也就是可能创建很多MyDbContext(继承自DbContext对象,EF上下文对象) 2.代码创建 当 ...