C++静态成员变量和静态成员函数

server/2024/10/18 12:19:31/

演示代码如下:

#include<iostream>
using namespace std;class Person
{
public://静态成员函数 所有对象共享一个函数,且只能调用静态成员变量 ******static void func(){m_A = 300;cout << "静态成员函数调用" << endl;}//静态成员变量//1 所有对象共享同一份数据//2 编译阶段就分配内存//3 类内声明,类外初始化操作 ******static int m_A;//静态成员变量和静态成员函数也有访问权限
private:static int m_B;static void fun2(){cout << "static void fun2 调用" << endl;}
};//类外初始化 ******************
int Person::m_A = 100;
int Person::m_B = 200;void test01()
{Person p1;cout << p1.m_A << endl;	Person p2;p2.m_A = 200;cout << p1.m_A << endl;//p1,p2共享静态成员变量m_A
}void  test02()
{//静态成员变量有两种访问方式//1. 通过对象进行访问Person p;cout << p.m_A << endl;//2. 通过类名进行访问cout << Person::m_A << endl;//cout << Person::m_B << endl;//报错,私有成员变量在类外无法调用
}void test03()
{Person p3;p3.func();Person::func();//Person::func2();报错,因为私有成员函数在类外无法调用
}
int main() {test01();test02();test03();
}

运行结果如下:

 总结:

静态成员变量
1 所有对象共享同一份数据
2 编译阶段就分配内存
3 类内声明,类外初始化操作

静态成员函数
1 所有对象共享一个函数
2 只能调用静态成员变量

静态成员变量和静态成员函数也有访问权限


http://www.ppmy.cn/server/93293.html

相关文章

《零散知识点 · SpringBoot Starter》

&#x1f4e2; 大家好&#xff0c;我是 【战神刘玉栋】&#xff0c;有10多年的研发经验&#xff0c;致力于前后端技术栈的知识沉淀和传播。 &#x1f497; &#x1f33b; CSDN入驻不久&#xff0c;希望大家多多支持&#xff0c;后续会继续提升文章质量&#xff0c;绝不滥竽充数…

Halcon 引擎方式调试

1.C# 端添加代码 启动调试模式 public HDevEngine MyEngine new HDevEngine(); // halcon引擎;// 启动调试服务 MyEngine.StartDebugServer();2.Halcon程序添加到进程 打开Halcon程序 【执行】>【附加到进程】 点击【确定】 3.C# 程序执行到相关位置 C# 程序执行调用…

写代码对人的影响

1 代码是需要跑起来的&#xff0c;不能你写了一段代码运行不了 2 代码过程中有大量的bug&#xff0c;经常异常报错&#xff0c;你需要花费时间去解决 对人的影响就是解决问题的态度得到强化&#xff0c;解决问题要比坚持正确困难&#xff0c;坚持正确只是需要自然而然的努力&…

使用Nginx Proxy Manager配置Halo的反向代理和申请 SSL 证书

本文介绍Nginx Proxy Manager配置Halo的反向代理和申请 SSL 证书&#xff0c;如需要了解Halo 2的安装&#xff0c;参考 如何在Linux云服务器上通过Docker Compose部署安装Halo&#xff0c;搭建个人博客网站&#xff1f;。 文章目录 安装Nginx Proxy ManagerNginx Proxy Manager…

Git原理与用法系统总结

目录 Reference前言版本控制系统Git的诞生配置Git配置用户名和邮件配置颜色配置.gitignore文件 Git的基础用法初始化仓库克隆现有的仓库添加暂存文件提交变动到仓库比较变动查看日志Git回退Git重置暂存区 Git版本管理重新提交取消暂存撤销对文件的修改 Git分支Git分支的优势Git…

蓝桥杯 2024 年第十五届省赛真题 —— 最大异或结点

目录 1. 最大异或结点1. 问题描述2. 输入格式3. 输出格式4. 样例输入5. 样例输出6. 样例说明7. 评测用例规模与约定 2. 解题思路1. 解题思路2. AC_Code 1. 最大异或结点 1. 问题描述 小蓝有一棵树,树中包含 N N N 个结点&#xff0c;编号为 0 , 1 , 2 , ⋯ , N − 1 0,1,2,…

谷粒商城实战笔记-71-商品服务-API-属性分组-前端组件抽取父子组件交互

文章目录 一&#xff0c;一次性创建所有的菜单二&#xff0c;开发属性分组界面1&#xff0c;左侧三级分类树形组件2&#xff0c;右侧分组列表3&#xff0c;左右两部分通信3.1 子组件发送数据3.2&#xff0c;父组件接收数据 Vue的父子组件通信父组件向子组件传递数据子组件向父组…