在class中定义member,如果在前面加上static,则无论这个class有多少object建立,这个member只有一份。
它可以被所有的objects共用,如果没有初始化,则默认初始值为0
需要再class外进行初始化
static functions:没有objects创立,也可以通过classname加:: 引用此函数
class Box
{
public:
static int objaccount;
....
};
int Box::objaccount=0;
class Box
{
public:
static int getobjacc();
...
}
int Box::getobjacc()
{
return objaccount;
}
int main()
{
Box box1(1.1);
Box box2(2.2);
cout << Box.getobjacc();
return 0;
}
本文深入探讨了C++类中静态成员的特性及其在不同场景下的应用,包括静态变量的作用域、生命周期、初始化方式以及静态成员函数的使用方法。详细解释了如何在不创建对象的情况下直接调用静态成员函数,并通过实例展示了如何在实际编程中有效地利用静态成员来简化代码结构。
1104

被折叠的 条评论
为什么被折叠?



