静态成员

作者在 2008-11-21 21:04:29 发布以下内容

静态成员函数可以直接访问该类的静态数据和函数成员。而访问非静态成员必须通过参数传递方式得到对象名,然后通过对象名来访问。

#include<iostream>

using namespace std;
class point
{public:
  point(int xx=0,int yy=0){X=xx;Y=yy;} //构造函数
  point(point&p);                      //拷贝函数
  ~point(){countp--;}                  //析构函数
  int getX(){return X;}                //函数
  int getY(){return Y;}                //函数
  static void getC(){cout<<"object id="<<countp<<endl;}  //静态成员函数
  private:
  int X,Y;                             //私有成员
  static int countp;                   //静态成员
};
point::point(point&p)                  //拷贝函数实现 
{X=p.X;
 Y=p.Y;
 countp++;
}
int point::countp=0;                  //静态数据成员的定义及初始化
int main()
{point A(4,5);                        //对象
 cout<<"point A,"<<A.getX()<<","<<A.getY();
 A.getC();                            
 point B(A);                          //要用到拷贝函数,用对象A初始化对象B
 cout<<"point B,"<<B.getX()<<","<<B.getY();
 point::getC();                       //对静态成员函数直接调用,当然也可以用对象名调用  
 }


C++ | 阅读 2008 次
文章评论,共0条
游客请输入验证码
浏览77325次