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;
}
相关推荐
千疑千寻~4 小时前
【QML】C++访问QML控件
c++·qml
yyovoll4 小时前
java线程知识点介绍1
java·开发语言
tyatyatya4 小时前
MATLAB高级可视化与图形处理:绘图美化/交互/导出实战
开发语言·matlab
爱写bug的野原新之助4 小时前
10_异常处理
开发语言·python
_UMR_4 小时前
多线程场景的学习3,使用CountDownLatch
java·开发语言
无限大.4 小时前
验证码对抗史
java·开发语言·python
June`4 小时前
C++11(四):特殊类与单例模式设计精要
开发语言·c++
代码不行的搬运工4 小时前
面向RDMA网络的Swift协议
开发语言·网络·swift
明月别枝惊鹊丶4 小时前
【C++】GESP 三级手册
java·开发语言·c++
不如打代码KK5 小时前
Java SPI与Spring Boot SPI的区别
java·开发语言·spring boot