[Qt][C++]static与extern关键字

文章目录

static

定义全局变量,可以使用static关键字,以保证在多个文件中调用的为同一个内存空间。

  1. 如果全局变量定义在.h头文件中,那么应该使用 static 关键字
  2. 在需要调用此全局变量的.h或者.cpp文件中,导入头文件
  3. 使用时,直接写变量名调用即可

Static 在类内用于定义静态成员(函数)。静态成员(函数)与具体的类无关,它的值及作用范围适用于所有的类,当它的值发生改变时,在所有的类中的值都会发生变化。

注意: 在类内部定义由 Static关键字修饰的成员 ,在使用前 必须在 类的外部 进行初始化。 不然会报错!

extern

定义全局变量,还可以使用extern关键字。extern 关键字是告诉编译器,变量定义在函数外部。可以是本文件,也可以是其它文件。

  1. 如果全局变量定义在.cpp中,那么应该使用extern关键字
  2. 在函数外定义,正常定义即可,定义时不要加extern关键字
  3. 在其他位置调用时,使用extern关键字进行声明即可

extern关键字声明会破坏面向对象的结构。建议使用static进行定义。

参考链接

QT中static关键字使用
QT全局变量的正确使用方法(static、extern)
QT中 使用static关键字 实现数据跨类传输

相关推荐
爱和冰阔落1 分钟前
【Python基础】从变量到面向对象:打通 Python 入门核心语法
开发语言·python
凡人叶枫6 分钟前
Effective C++ 条款05:了解 C++ 默默编写并调用哪些函数
java·linux·开发语言·c++·effective c++·编程范式
少司府8 分钟前
C++进阶:AVL树
开发语言·数据结构·c++·二叉树·avl树
挨代码13 分钟前
UEC++ 数据类型及继承关系
c++·ue
某风吾起15 分钟前
C语言总结
c语言·开发语言
winlife_15 分钟前
全程用 AI 做一款商业级手游 · EP7 表现层与手感:从“能跑“到“摸起来爽“
java·开发语言·人工智能·unity·ai编程·游戏开发·mcp
千纸鹤の脉搏16 分钟前
多线程的初步使用
java·开发语言·学习·多线程
专注VB编程开发20年18 分钟前
阿里通义灵码插件安装失败
开发语言·ide·c#·visual studio
weixin_4462608527 分钟前
Typora 插件开发实战:基于 JavaScript/HTML 构建定制化 Markdown 扩展
开发语言·javascript·html
好家伙VCC31 分钟前
Rust+Bioinfo:80ms极速SNP注释引擎
java·开发语言·算法·rust