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;
}
相关推荐
kylezhao201910 分钟前
C#读取字节数组某个位的值
开发语言·c#
资生算法程序员_畅想家_剑魔23 分钟前
Java常见技术分享-26-事务安全-锁机制-作用与分类
java·开发语言·数据库
qq_4061761440 分钟前
JS 事件循环(Event Loop)
开发语言·前端·javascript
梵尔纳多1 小时前
OpenGL 坐标映射
c++·图形渲染
weixin_433179331 小时前
python - for循环,字符串,元组基础
开发语言·python
智航GIS1 小时前
9.1 多线程入门
java·开发语言·python
qq19257230271 小时前
QT的QML
开发语言·qt
情缘晓梦.1 小时前
C语言分支与循环
c语言·开发语言
消失的旧时光-19431 小时前
从 Java 接口到 Dart freezed:一文彻底理解 Dart 的数据模型设计
java·开发语言·flutter·dart
大头流矢2 小时前
C++的类与对象·三部曲:初阶
开发语言·c++