数据共享 (static类型):
static类型不属于某个实例,而是属于某个类,实现类的多个实例的数据共享。同一个类所有的对象共享此成员,该成员只有一份拷贝。
class Date
{
private:
static int to; //static类型
public:
static int total; //static类型
Date();
~Date();
void Printto();
};
int Date::total=0; //static类型赋初始值
int Date::to=0; //static类型赋初始值
void Date::Printto()
{
cout<<to<<endl;
}
Date::Date() //每次创造新的对象,total增加1
{
total++;
to++;
}
Date::~Date() //释放对象的存储空间,total减1
{
total--;
to--;
}
数据保护(const类型):
const修饰的成员数据不可更改,只能访问。常类型函数不可修改本类的数据成员。
class Date
{
private:
const double PI; //const类型
public:
double GetRadius() const; //const类型
void Print() const; //const类型
Date();
~Date();
};
double Date::GetRadius() const //const成员函数定义
{
return PI*2;
}
void Date::Print() const //const成员函数定义
{
cout<<2*PI<<endl;
}
Date::Date():PI(3.1415926) //const成员数据赋初始值
{
}
Date::~Date()
{
}