Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c++ 静态类

作者:氵冗氵孚   发布日期:2025-05-07   浏览:81

// 静态类在C++中并不存在直接的定义,但可以通过将所有成员声明为静态来实现类似的效果。
// 下面是一个使用静态成员和静态方法模拟静态类的例子。

class StaticClass {
private:
    // 静态私有成员变量
    static int privateStaticMember;

public:
    // 静态公有成员变量
    static int publicStaticMember;

    // 静态构造函数(C++没有静态构造函数的概念,可以用静态初始化代替)
    static void init() {
        privateStaticMember = 0;
        publicStaticMember = 0;
    }

    // 静态成员函数
    static void setPrivateStaticMember(int value) {
        privateStaticMember = value;
    }

    static int getPrivateStaticMember() {
        return privateStaticMember;
    }

    static void setPublicStaticMember(int value) {
        publicStaticMember = value;
    }

    static int getPublicStaticMember() {
        return publicStaticMember;
    }
};

// 初始化静态成员变量
int StaticClass::privateStaticMember = 0;
int StaticClass::publicStaticMember = 0;

int main() {
    // 初始化静态类
    StaticClass::init();

    // 调用静态成员函数
    StaticClass::setPrivateStaticMember(10);
    StaticClass::setPublicStaticMember(20);

    // 获取静态成员变量的值
    std::cout << "Private Static Member: " << StaticClass::getPrivateStaticMember() << std::endl;
    std::cout << "Public Static Member: " << StaticClass::getPublicStaticMember() << std::endl;

    return 0;
}

解释说明:

  1. 静态成员变量privateStaticMemberpublicStaticMember 是类 StaticClass 的静态成员变量。它们属于类本身而不是类的任何实例,因此在整个程序中只有一份副本。
  2. 静态成员函数setPrivateStaticMembergetPrivateStaticMembersetPublicStaticMembergetPublicStaticMember 是静态成员函数,可以直接通过类名调用,而不需要创建类的实例。
  3. 静态初始化:由于 C++ 没有静态构造函数的概念,我们使用了一个静态成员函数 init() 来初始化静态成员变量。
  4. 使用静态类:在 main 函数中,我们调用了静态成员函数来设置和获取静态成员变量的值。

通过这种方式,我们可以模拟一个“静态类”的行为。

上一篇:c++ %d

下一篇:c++泛型

大家都在看

c++闭包

c++单引号和双引号的区别

c++ 注释

c++如何判断素数

c++freopen怎么用

c++ 获取系统时间

c++进制转换函数

c++ tcp

c++ gcd函数

c++ cli

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站