C++静态成员
静态成员:在成员变量和成员函数前加上关键字static。
静态成员分为:
静态成员变量:
1.在编译阶段分配内存。
2.类内声明,类外初始化。
3.所有对象共享同一份数据。
静态成员函数:
1.所有对象共享同一个函数。
2.静态成员函数只能访问静态成员变量。
静态变量的两种访问方式:
1.通过对象。
2.通过类名。
#include<iostream> using namespace std; class WLM { public: static int m_a; private: static int m_b; }; int WLM::m_a = 10; int WLM::m_b = 20; class ZJY { public: static void func() { cout << "func调用" << endl; m_a = 100; //静态成员函数只能访问静态成员变量 //m_b = 100; 错误 } static int m_a; int m_b; private: static void func2() { } }; int ZJY::m_a = 10; void test1() { //静态成员变量两种访问方式 //1.通过对象 WLM wlm1; wlm1.m_a = 100; cout << "wlm1.m_a = " << wlm1.m_a << endl; WLM wlm2; wlm2.m_a = 200; cout << "wlm1.m_a = " << wlm1.m_a << endl; //所有静态成员变量共享同一份数据 cout << "wlm2.m_a = " << wlm2.m_a << endl; //2.通过类名 cout << "m_a = " << WLM::m_a << endl; //cout << "m_b" << WLM::m_b << endl; 静态成员变量也有访问权限 } void test2() { //静态成员变量两种访问方式 //1.通过对象 ZJY zjy; zjy.func(); //2.通过类名 ZJY::func(); //ZJY::func2(); //错误,静态成员函数也有访问权限 } int _tmain(int argc, _TCHAR* argv[]) { test1(); test2(); system("pause"); return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)