c++ 类中static成员的使用

来源:互联网 发布:java转码utf-8转gbk 编辑:程序博客网 时间:2024/05/22 15:28

在c++类中static成员遵循正常的成员的使用,但是static成员函数没有this 指针,static成员函数只能访问static成员,不能直接访问对象的非static成员。

类中static成员都是独立于该类的任意对象存在的,与类相关联但是不与该类的对象相关联。但是static成员的作用域只在类中,局外不可以调用,但是static数据一直到程序结束static数据才释放,又有全局变量的特性。

static数据成员在定义该类之后,需要在定义该类之后再进行声明,声明该static数据的作用域,以及数据类型,才能被后面的代码以及成员函数所访问识别。

代码如下

class  A{
public:
int a;
void display();
static int add();
A(){ a = 10,b=50;};
private:
static int b;
};
int A::b; //声明A所在static变量名称和数据类型
int A::add() //不能使用类里面的非static成员
{
return b;
};
void A::display()
{
cout<<a<<"  "<<b<<endl;
};



0 0