码迷,mamicode.com
首页 > 其他好文 > 详细

静态数据成员与静态成员函数

时间:2015-12-29 19:24:57      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

    静态属性不是类中每个对象拥有的,而是共有的。由于静态成员逃离了对象而存在的性质,所以该实体应该在所有对象产生之前产生,更适合的时机是在程序启动的时候做初始化。初始化时候不可重复上static,但是要加上类名空间。该实体在程序中的唯一性,要求他不可以和类的定义放在头文件中,但是它确实是类的成员,所以放在类实现中最合适。如下:

//--------------------Student.h ---类定义的文件

class Student{

private:

   static int num;

}

//-------------------Student.cpp---内实现的文件

#include"Student.h"

Student::number=0;

由于静态数据成员不属于任何一个对象,为了安全起见将静态数据成员定义为私有的,于是如何去访问它呢?同样的可以定义静态成员函数来访问它,用静态成员函数去访问静态数据是最合适不过的,在类中声明静态成员函数,要在成员函数前加上static关键字,可以用对象来调用他,也可以用雷明加域操作符来调用。静态成员函数实现部位应该和成员函数位置相同,在类外部实现时要免去static,但是域操作符是必须的。

//--------------------Student.h ---类定义的文件

class Student{

private:

   static int num;

public:

static void Print();

}

//-------------------Student.cpp---内实现的文件

#include"Student.h"

Student::number=0;

void Student::Print(){

   cout<<num++<<endl;

}

静态数据成员与静态成员函数

标签:

原文地址:http://www.cnblogs.com/td15980891505/p/5086669.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!