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

静态成员的使用

时间:2015-05-08 23:48:34      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:

#include<iostream.h>
class ceshi{
public:
   static int i;
   static int f(){
   return i;
   }
};
int ceshi::i=1;
class drived:public  ceshi{
};
void main(){
    cout<<drived::i<<endl;
    cout<<ceshi::i<<endl;
    drived::i=2;
    cout<<drived::i<<endl;
    cout<<ceshi::i<<endl;
    cout<<drived::f();
}
技术分享
static成员受段约束符的限制,基类和派生类共享基类的static成员。要求访问静态成员时,必须使用"类名::成员"显示地说明。
#include<iostream.h>
class ceshi{
public:
   static int i;
};
int ceshi::i=1;
void main(){
    ceshi obj1,obj2;
    cout<<obj1.i<<endl;
    cout<<obj2.i<<endl;
    //obj1.i=2;效果同下
    ceshi::i=2;
    cout<<ceshi::i<<endl;
    cout<<obj1.i<<endl;
    cout<<obj2.i<<endl;
}
技术分享
静态数据成员被该类的所有对象共享。无论建立多少个类对象,都只有一个静态数据的存储空间。
静态成员的存储空间必须在类定义外进行分配,具体语法如下:
类型名 类名::静态数据成员[=常量表达式];
静态数据成员的初始化工作不会自动进行(而普通的静态变量若没有显示的初始化,自动初始化为0),因此这个工作是必须的。

 

静态成员的使用

标签:

原文地址:http://www.cnblogs.com/leijiangtao/p/4489058.html

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