// 静态类在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;
}
privateStaticMember
和 publicStaticMember
是类 StaticClass
的静态成员变量。它们属于类本身而不是类的任何实例,因此在整个程序中只有一份副本。setPrivateStaticMember
、getPrivateStaticMember
、setPublicStaticMember
和 getPublicStaticMember
是静态成员函数,可以直接通过类名调用,而不需要创建类的实例。init()
来初始化静态成员变量。main
函数中,我们调用了静态成员函数来设置和获取静态成员变量的值。通过这种方式,我们可以模拟一个“静态类”的行为。
上一篇:c++ %d
下一篇:c++泛型
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站