C++静态变量
1.VSCode环境配置(QT)2.Log4cplus导入QT5(VSCode)3.不显示命令提示符窗口(CMake)4.LVDS(FPGA)5.更新QT Creator 14后launch debugger报错6.VSCode配置Python(记录)7.QT打包exe(含错误解决方法)8.Vivado联合Modelsim仿真
9.C++静态变量
10.解决Vivado连接不到硬件的报错11.vivado系统任务学习12.QT打开一直转圈13.QT导入Eigen库14.错误记录:Poor placement for routing between an IO pin and BUFG.15.错误记录:[Synth 8-6895] The reference checkpoint16.VSCode中CMake tools插件配置文件17.QT添加外部库(CMake Mingw)18.错误记录:[Place 30-681] Sub-optimal placement for a global clock-capable IO pin and MMCM pair.静态变量定义
静态成员是指在类中声明为static的成员变量或成员函数。静态成员属于类本身,而不是类的某个特定实例。这意味着,无论创建多少个类的实例,静态成员都只有一个副本,并且可以通过类名直接访问,而不需要通过对象实例。
静态成员变量的特点
共享性:静态成员变量被该类的所有实例共享。当一个实例修改了静态成员变量,其他所有实例都会看到这个修改。
内存分配:静态成员变量在全局数据区分配内存,而不是在栈或堆上,这意味着它们的生命周期与程序运行时间相同。
访问方式:可以通过类名直接访问静态成员变量,无需创建类的实例。例如,ClassName.staticMemberName
静态成员函数的特点
访问限制:静态成员函数只能直接访问其他的静态成员,不能访问非静态成员。它们没有this指针,因为它们不属于任何对象实例。
重载与重写:静态方法可以被重载,但不能被重写,因为它们属于类,不属于类的任何实例。
应用举例
计数器:可以使用静态成员变量来记录该类实例的总数。每当创建新实例时,静态成员变量增加;销毁实例时,减少。
共享数据:当多个实例需要共享某些数据时,可以将这些数据定义为静态成员变量。
点击查看代码
class BufferedOutput { public: // 返回任何对象写入的字节数 short BytesWritten() { return bytecount; } // 重置计数器 static void ResetCount() { bytecount = 0; } // 静态成员声明 static long bytecount; }; // 需要在类声明的外部去定义静态成员变量 long BufferedOutput::bytecount;
本文作者:Little_R
本文链接:https://www.cnblogs.com/Little-Rainbow/p/18475264
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步