静态成员变量

来源:互联网 发布:淘宝淘金币首页 编辑:程序博客网 时间:2024/05/01 12:07

静态成员变量

 

1静态成员函数只能访问静态变量,因为静态变量不含this指针

2静态成员变量  不但被类的各个对象共享,而且也被派生类的对象共享

 

示例:

 

class base{

public:

         static int num;

};

 

int base::num=0;

 

class derived:public base

{

};

 

         base a;

         derived b;

         a.num++;

         cout<<a.num<<endl;

 

         b.num++;

         cout<<b.num<<endl;

 

3 类的静态成员可以成为成员函数的可选参数,而普通成员不可以

示例:

class base{

 

public:

         static int num;

 

         int var;

 

         void f1(int i=num);  // 正确

         void f2(int i=var);  // 错误

};

 

4 类的静态成员可以是所属类的类型,而普通成员不可以,普通成员只能声明为所属类类型的指针或引用

 

class base{

 

public:

         static base num;

 

         base var; // 错误

 

         base *pBase;

 

         base &myBase;

};

原创粉丝点击