当前位置: 首页 > news >正文

深入理解C++static 关键字修饰类的成员变量

类的静态成员变量存储在静态存储区不存储在对象的内存布局(堆或栈)中。

该变量是该类的所有对象所共有的。

它在程序启动时(main函数执行前)完成初始化,在程序结束时才销毁。

可以通过类名::变量名(如MyClass::count)在任何地方访问(前提是public

如以下代码所示 变量count是类的对象class1和类的对象class2所共有的,因为赋值语句class1.count =20或者class2.count = 30都改变了MyClass::count的值。

特别注意:类外的初始化语句是重要而且必须的(int MyClass::count = 0;)没有它编译将报错。

#include <iostream> class MyClass { public: static int count; // ① 类内声明(只是告诉编译器有这个变量) }; int MyClass::count = 0; // ② 类外定义(真正分配内存并初始化,此处是全局域) int main() { MyClass::count = 10; // 正确访问 std::cout << MyClass::count; // 输出 10 MyClass class1; class1.count = 20; std::cout << MyClass::count; // 输出 20 MyClass class2; class2.count = 30; std::cout << MyClass::count; // 输出 30 return 0; }
http://www.jsqmd.com/news/1402737/

相关文章:

  • WSL2如何指定操作系统安装在哪里,如何迁移?
  • 7个GitHub宝藏项目:轻量级AI智能体开发框架与工具推荐
  • 监控塔出片品质哪家高,十大品牌深度测评,所见即所得不踩雷 - 工业设备
  • 从黑客松Demo Day学习腾讯云Serverless架构实战与优化
  • CIFAR-10和CIFAR-100安装和使用
  • 开源项目双目录托管模型:Zen与Go模型实践指南
  • pycharm2025.3修改启动照片
  • 批量重命名文件:从手动到自动,提升文件管理效率的完整指南
  • 技术动态日报 · 2026年8月15日(星期六)
  • 2026佛山工业电子秤制造企业口碑推荐强势出炉,零套路不踩坑,实力测评看这篇就够 - 工业设备
  • 高性价比别墅源头厂家
  • VSCode C++调试配置全解析:从launch.json到tasks.json的完整工作流
  • deque与priority_queue:底层原理、接口分析与模拟实现
  • OpenClaw+轻量云:低成本构建秒级响应私有知识库实战
  • MobaXterm中文设置全攻略:从界面汉化到终端编码配置
  • 月之暗面索引未更新:ACL 变更后它竟越权回答了客户机密
  • AI大模型智能体开发实战:从Harness工程到Multi-Agent系统构建
  • 艰难时期(cifar10训练进入瓶颈85分境地)
  • Articulate 360深度解析:从交互课件到移动课程的全流程制作指南
  • 传统SEO之外新机会:利用GEO优化抢占AI搜索流量
  • InferScale:GPU原生KV注入技术如何优化个性化LLM服务性能
  • DeepSeek-V4-Flash视觉API接入实战:从环境配置到多模态应用开发
  • 有序集合 / 平衡二叉搜索树在标准库中的设计哲学
  • 数据结构考研手撕代码实战:从零基础到考场精通
  • XTDrone2配置的一些问题
  • OpenClaw开源AI框架:从技术原理到实战部署的完整指南
  • Excel VLOOKUP函数三大查找模式详解:精准、近似与模糊匹配
  • QClaw自动化运营实战:从零构建小红书智能增长工作流
  • 微信小程序分享到朋友圈功能失效?从基础库到配置的完整排查指南
  • 数据链路层:网络通信的帧处理与差错控制