当前位置: 首页 > news >正文

C++之类的静态成员

C++静态成员是指在类中使用static关键字声明的成员变量或成员函数。静态成员属于类本身,而不是类的对象。它们在所有对象之间共享,只有一份内存空间。静态成员在类外初始化,且只能访问一次。

关键字 static 意味着类中只有一个该成员的实例。静态变量用于定义常量,因为它们的值可以通过直接调用类而不需要创建类的实例来获取。静态变量可在成员函数或类的定义外部进行初始化。你也可以在类的定义内部初始化静态变量。

下面的实例演示了静态变量的用法:

#include <iostream>
using namespace std;

class MyClass {
public:
    static int staticVar; // 静态成员变量
    static void staticFunc() { // 静态成员函数
        cout << "This a static function" << endl;
    }
};

// 在类外初始化静态成员变量
int MyClass::staticVar = 0;

int main() {
    MyClass obj1;
    MyClass obj2;

    // 访问静态成员变量和函数
    cout << "obj1.staticVar: " << obj1.staticVar << endl;
    cout << "obj2.staticVar: " << obj2.staticVar << endl;

    obj1.staticFunc(); // 通过对象调用静态成员函数
    MyClass::staticFunc(); // 通过类名直接调用静态成员函数

    system("pause"); // 暂停程序,等待用户按键继续
    return 0;
}

obj1.staticVar: 0

obj2.staticVar: 0

This a static function

This a static function

请按任意键继续. . .

相关文章:

  • React使用Valtio的hook实现响应式状态管理
  • 运筹说 第67期 | 动态规划模型的建立与求解
  • 【C++干货铺】会旋转的二叉树——AVLTree
  • 移动安全-certutil
  • WEB 3D技术 three.js 阴影属性
  • 微信小程序定义并获取日志/实时log信息
  • 软件测试|Python数据可视化神器——pyecharts教程(十二)
  • java返回文件时为图片或pdf等设置在线预览或下载
  • sqlalchemy 事务自动控制(类java aop)
  • 【蓝桥杯/DFS】分考场 (Java)
  • SwiftUI之深入解析Alignment Guides的超实用实战教程
  • 漏洞修复整理
  • WaitForSingleObject 函数的诸多用途与使用场景总结
  • SCI一区级 | Matlab实现RIME-CNN-LSTM-Mutilhead-Attention多变量多步时序预测
  • 保存数据到文本文件或 CSV 文件的示例
  • 并发编程的12条规范
  • [Docker] Docker为什么出现
  • k8s operator从0到1实践
  • 静态网页设计——个人图书馆(HTML+CSS+JavaScript)(dw、sublime Text、webstorm、HBuilder X)
  • 设计模式-委托模式
  • 押井守在30年前创造的虚拟世界何以比当下更超前?
  • 美国务院批准向土耳其出售导弹及相关部件,价值3.04亿美元
  • 远如《月球背面》,近似你我内心
  • 习近平在中拉论坛第四届部长级会议开幕式的主旨讲话(全文)
  • 基因编辑技术让蜘蛛吐彩丝
  • 金科股份重整方案通过,正式进入重整计划执行环节