class Box{
public:
int colume();
privare:
static int height;
int width;
int length;
}
1.如果希望各对象中的数据成员值是一样的,就可以把它定义为静态数据成员,这样他就为各对象所拥有,所有的对象都可以引用它。静态的书籍成员在内存中值占有一份空间。这样可以节约空间,提高效率。
2.静态数据成员在开始运行时被分配空间,到程序运行结束时才释放空间。
3.静态数据成员可以初始化,只能在类体外进行初始化。如 int Box::height = 10;
注意:不能用参数初始化对静态成员初始化。
如 Box(int h,int w, int len):height(h){} 这样是错的。
4.静态数据成员可以通过对象名引用,也可以通过类名来引用。
如:
int Box::height = 10;
int main(){
Box a(15,20);
cout<<a.height<<endl; //通过对象名a引用静态数据成员。
cout<<Box::height<<endl; //通过类名引用静态数据成员。
}