C++静态成员

静态成员

静态成员就是在成员变量和成员函数前加上关键字static,称为静态成员

静态成员分为

静态成员变量

  1. 所有对象共享同一份数据
  2. 在编译阶段分配内存
  3. 类内声明,类外初始化

静态成员函数

  1. 所有对象共享同一个函数
  2. 静态成员函数只能访问静态成员变量
cpp 复制代码
#include <iostream>
#include <string>
using namespace std;

class Person
{
public:
	static void func()
	{
		cout << "func调用" << endl;
		m_A = 100;
		//m_B = 100;
	}
	static int m_A;
	int m_B;
private:
	//static int m_B;  //静态成员变量也是有访问权限的
	static void func2()
	{
		cout << "func2调用" << endl;
	}
};

int Person::m_A = 10;

void test01()
{
	//静态成员变量两种访问方式
	//1,通过对象
	Person p1;
	p1.func();

	Person::func();
}

int main()
{
	test01();
	return 0;
}
相关推荐
为何创造硅基生物26 分钟前
C语言 结构体内存对齐规则(通俗易懂版)
c语言·开发语言
吃好睡好便好28 分钟前
在Matlab中绘制横直方图
开发语言·学习·算法·matlab
星寂樱易李37 分钟前
iperf3 + Python-- 网络带宽、网速、网络稳定性
开发语言·网络·python
仰泳之鹅1 小时前
【C语言】自定义数据类型2——联合体与枚举
c语言·开发语言·算法
之歆1 小时前
DAY_12JavaScript DOM 完全指南(二):实战与性能篇
开发语言·前端·javascript·ecmascript
于小猿Sup2 小时前
VMware在Ubuntu22.04驱动Livox Mid360s
linux·c++·嵌入式硬件·自动驾驶
cen__y2 小时前
Linux12(Git01)
linux·运维·服务器·c语言·开发语言·git
AI人工智能+电脑小能手2 小时前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
社交怪人3 小时前
【算平均分】信息学奥赛一本通C语言解法(题号2071)
c语言·开发语言
郭涤生4 小时前
不同主机之间网络通信-以太网连接复习
开发语言·rk3588