news 2026/4/21 20:44:52

C++之静态成员

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++之静态成员
  • C++为什么需要静态成员
  • C语言中可以通过全局变量实现数据共享,在程序的任何位置都可以访问
  • C++中希望某个类的多个对象之间实现数据共享,可以通过static建立一个被局限在类中使用的全局资源,该类型资源被称为静态成员

静态成员变量

  • 静态成员变量(可以理解为局限在类中使用的全局变量)
  • 被static修饰的成员变量即为静态成员变量
class类名{static数据类型 变量名;//声明};数据类型 类名::变量名=初值;//定义和初始化

  • 实例化对象时只实现非静态成员变量
  • 访问方式:
    • 类名::静态成员变量;
    • 对象.静态成员变量;
#include<iostream>usingnamespacestd;classA{public:intm_data;staticints_data;// 声明A(intdata=0):m_data(data){}};intA::s_data=100;//定义 并 初始化intmain(void){cout<<A::s_data<<endl;Aa1(123);cout<<"a1 size = "<<sizeof(a1)<<endl;cout<<a1.s_data<<endl;Aa2(1);a2.s_data=999;cout<<a1.s_data<<endl;return0;}

静态成员函数

  • 被static修饰的成员函数即为静态成员函数
class类名{访问控制限定符:static返回类型 函数名(形参表){...}};
  • 注意:
    • 静态成员函数可以直接定义在类的内部,也可以定义在类的外部,这一点和普通的成员函数没有区别
    • 静态成员函数没有this指针,没有const属性,可以把静态函数理解为被限制在类中使用的全局函数
    • 静态成员函数中只能访问静态成员,但是在非静态成员函数中既可以访问静态成员也可以访问非静态成员
    • 静态成员函数和静态成员变量一样,也要受到类的访问控制限定符的约束
  • 在类的外部访问静态成员函数
    • 类名::静态成员函数(实参表);
    • 对象.静态成员函数(实参表);
#include<iostream>usingnamespacestd;classA{public:intm_data;staticints_data;A(intdata=0):m_data(data){}voidfunc1(void){// func1(A *this)cout<<m_data<<endl;cout<<s_data<<endl;}staticvoidfunc2(){//静态成员函数cout<<"静态成员函数"<<endl;cout<<s_data<<endl;//cout << m_data << endl; //error}};intA::s_data=100;//定义 并 初始化intmain(void){cout<<A::s_data<<endl;A::func2();//A::func1(); //func1(&对象的地址) errorreturn0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 17:37:18

基于Docker的ChatTTS高效部署方案:从零搭建到性能调优

背景痛点&#xff1a;裸机部署 ChatTTS 的“三座大山” Python 依赖冲突 ChatTTS 依赖 torch、torchaudio、transformers 等重型库&#xff0c;与系统自带 Python 包或用户其他项目共用 site-packages 时&#xff0c;常出现 ABI 不兼容、版本回退、import 报错。CUDA 版本“漂…

作者头像 李华
网站建设 2026/4/17 1:15:44

ChatGPT底层原理深度解析:从Transformer到RLHF的全链路实现

ChatGPT底层原理深度解析&#xff1a;从Transformer到RLHF的全链路实现 背景痛点 当前对话系统落地时&#xff0c;开发者普遍遭遇以下瓶颈&#xff1a; 响应不一致&#xff1a;同一Prompt多次调用&#xff0c;答案随机漂移&#xff0c;难以满足客服、医疗等严肃场景的一致性…

作者头像 李华
网站建设 2026/4/17 16:29:44

农田边缘节点资源告急?Docker 27原生插件化监控模块上线即用,实时捕获温湿度/CO₂/光照异常(含CVE-2024-23652防护补丁)

第一章&#xff1a;农田边缘节点资源告急&#xff1f;Docker 27原生插件化监控模块上线即用&#xff0c;实时捕获温湿度/CO₂/光照异常&#xff08;含CVE-2024-23652防护补丁&#xff09; 在部署于树莓派、Jetson Nano等低功耗边缘设备的智慧农业系统中&#xff0c;传统监控方案…

作者头像 李华
网站建设 2026/4/18 8:34:58

AI 辅助开发实战:高效完成本科毕业设计的技术路径与避坑指南

背景痛点&#xff1a;毕设三座大山 大四下学期&#xff0c;时间被实习、考研、面试切成碎片&#xff0c;还要在三个月内交付一份“像样”的本科毕业设计。多数人第一次独立完成完整工程&#xff0c;痛点高度相似&#xff1a; 选题时只有一句话&#xff1a;“做个图书管理系统…

作者头像 李华
网站建设 2026/4/17 17:50:39

CozeStudio进阶指南:多模态与知识库功能深度配置

1. CozeStudio多模态与知识库功能概述 在AI应用开发领域&#xff0c;处理图片、文档等非结构化数据一直是技术难点。CozeStudio作为一站式AI智能体开发平台&#xff0c;通过多模态文件上传与知识库组件&#xff0c;为企业级应用提供了完整的解决方案。我曾在一个电商客服项目中…

作者头像 李华