静态成员函数
静态成员函数只能访问静态数据成员,不能访问其他静态成员函数和类外部的其他函数。静态成员函数在类对象不存在的情况下也可以被调用,访问时使用类名加访
问范围解析运算符::
静态成员函数有一个类范围,不能访问类的this指针。
此外,需要注意的是不能吧静态放置在类的定义中,在类的外部通过使用范围解析
运算符::来重新声明静态变量从而对他进行初始化。
#include<iostream>
using namespace std;
class box
{
public:
static int count;
box(double wid,double hei , double len)
{
width=wid;
height=hei;
length=len;
//创建对象加1
count++;
}
static int getvalues()
{
return count;
}
private:
double width;
double length;
double height;
};
//初始化静态成员
int box::count=0;
int main()
{
cout<<box::getvalues()<<endl;//输出0
box a(6.0,3.0,4.0);
box b(1.0,2.0,3.0);
box c(2.0,3.0,4.0);
cout<<box::getvalues()<<endl;//输出3
}