数据成员可以分静态变量、非静态变量两种:
静态成员:
静态类中的成员加入static修饰符,即是静态成员.
可以直接使用类名+静态成员名访问此静态成员,因为静态成员存在于内存,非静态成员需要实例化才会分配内存,所以静态成员不
能访问非静态的成员..因为静态成员存在于内存,所以非静态成员可以直接访问类中静态的成员
在C++中,静态成员是属于整个类的而不是某个对象,静态成员变量只存储一份供所有对象共用。所以在所有对象中都可以共享
它。使用静态成员变量实现多个对象之间的数据共享不会破坏隐藏的原则,保证了安全性还可以节省内存。
静态成员可以通过双冒号来使用即<类名>::<静态成员名>。
class Point
{
public:
void init()
{
}
static void output()
{
}
};
int main(void)
{
Point::init();
Point::output();
}
Point::init();出错
Point pt;
pt.output();
可以。
类的对象可以使用静态成员函数和非静态成员函数
注意:静态成员函数中不能引用非静态成员,因为静态成员函数在类的定义时就已分配好空间。