Qt Creator静态成员变量、全局变量、静态成员函数 您所在的位置:网站首页 静态成员和静态变量 Qt Creator静态成员变量、全局变量、静态成员函数

Qt Creator静态成员变量、全局变量、静态成员函数

2023-11-09 12:48| 来源: 网络整理| 查看: 265

静态成员变量

是一个全局区域的变量,不同*.cpp文件间可以相互访问(记得包含*.cpp对应的头文件)

1.在mainwindow.h中定义

public: MainWindow(QWidget *parent = nullptr); ~MainWindow(); static int start_flg;

2.在mainwindow.cpp中初始化,注意初始化的位置不要写在MainWindow里面去

#include "mainwindow.h" int MainWindow::start_flg=0; MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); ......

3.在其他cpp文件中访问时时,写作MainWindow::start_flg来访问

if(MainWindow::start_flg) { QPainter painter(this);//相当于QPainter *painter = new QPainter(this); //绘制坐标轴 painter.drawLine(0,40,210,40); } 全局变量

这里要强调一点,全局变量和静态成员变量的生命周期不同,静态变量是局部的生命周期,在一个函数体内运行结束后,变量会恢复到原来的值,;而全局变量则是整个程序生命周期,一经改变则是永久性的。

.h在类的外面定义全局变量

#include #include #include #include #include QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACE #if defined(_MSC_VER) && (_MSC_VER >= 1600) # pragma execution_character_set("utf-8") #endif extern double L12x; extern double L12y; extern double L12z; class Widget : public QWidget { Q_OBJECT public: Widget(QWidget *parent = nullptr); ~Widget(); void DataBaseLoad();

.cpp初始化

#include "widget.h" #include "ui_widget.h" #include "operation.h" #include double L12x,L12y,L12z = 0; Widget::Widget(QWidget *parent) : QWidget(parent) , ui(new Ui::Widget) { ui->setupUi(this); DataBaseLoad(); qDebug()


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有