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;
}
相关推荐
laocooon52385788612 小时前
C语言,少了&为什么报 SegmentationFault
c语言·开发语言
white-persist13 小时前
【攻防世界】reverse | re1-100 详细题解 WP
c语言·开发语言·网络·汇编·python·算法·网络安全
CHANG_THE_WORLD13 小时前
Python 中的循环结构详解
开发语言·python·c#
程序员-周李斌13 小时前
ConcurrentHashMap 源码分析
java·开发语言·哈希算法·散列表·开源软件
JS_GGbond13 小时前
JavaScript入门学习路线图
开发语言·javascript·学习
quikai198113 小时前
python练习第一组
开发语言·python
BD_Marathon13 小时前
【JavaWeb】JS_JSON在客户端的使用
开发语言·javascript·json
还没想好取啥名13 小时前
C++11新特性(一)——原始字面量
开发语言·c++
天赐学c语言13 小时前
12.6 - K个一组翻转链表 && C 编译到执行的4个阶段
数据结构·c++·链表·c编译
谷粒.13 小时前
测试数据管理难题的7种破解方案
运维·开发语言·网络·人工智能·python