欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > C++类别之Static成员

C++类别之Static成员

2024/10/25 8:15:54 来源:https://blog.csdn.net/hdtmd/article/details/140962611  浏览:    关键词:C++类别之Static成员

类别之static成员
 

類別中宣告為 static 的成員屬於類別,獨立於物件而存在,舉例如下

#include <iostream>class Demo {
public:Demo() {std::cout << "constructor" << std::endl;count++;}static int get_count() {return count;}private:static int count;
};int Demo::count = 0;int main() {Demo d1;std::cout << Demo::get_count() << std::endl;Demo d2;std::cout << d2.get_count() << std::endl;Demo d3;std::cout << d3.get_count() << std::endl;return 0;
}

count 为 static 的资料成员

static int count;
存取宣告为 static 的资料成员得用 static 的成员函数
static int get_count() {return count;
}
count 用来计算 Demo 物件建立的次数,这必须在类别定义外先初始化
int Demo::count = 0;
由于 get_count() 为 static 成员函数,因此可以直接用类别名称呼叫
std::cout << Demo::get_count() << std::endl;

结果如下

$ g++ u0909.cpp
$ ./a.out
constructor
1
constructor
2
constructor
3
$

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com