[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关键字 实现数据跨类传输

相关推荐
weixin_448617057 分钟前
疏老师-python训练营-Day43复习日
开发语言·python
MATLAB代码顾问15 分钟前
MATLAB实现遗传算法求解路网路由问题
开发语言·算法·matlab
啊阿狸不会拉杆16 分钟前
《算法导论》第 21 章-用于不相交集合的数据结构
数据结构·c++·算法·随机森林
愿天堂没有C++29 分钟前
C++——高性能组件
开发语言·c++·windows
CodeCraft Studio1 小时前
3D文档控件Aspose.3D实用教程:在 C# 中将 3MF 文件转换为 STL
c++·3d·c#
歆晨技术笔记2 小时前
开源项目 - 基于 C++ 实现沪深交易所流式二进制协议
c++
点灯的棉羊2 小时前
从C学C++(10)-string/vector/map的简单使用
c语言·c++
侧耳倾听1112 小时前
Java的异常机制
java·开发语言
草莓熊Lotso2 小时前
《吃透 C++ 类和对象(上):封装、实例化与 this 指针详解》
开发语言·c++·经验分享·笔记·其他
Shun_Tianyou3 小时前
Python Day28 HTML 与 CSS 核心知识点 及例题分析
开发语言·前端·css·python·算法·html