随笔 - 30, 文章 - 0, 评论 - 64, 引用 - 0

导航

<2008年12月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

公告

smallfa
博客园
C++博客
博客生活
Blogjava
足球博客

常用链接

留言簿(2)

随笔分类

随笔档案

Blogs

C++

搜索

  •  

最新评论

阅读排行榜

评论排行榜

静态成员(Static members)

静态成员与全域变量(global variable)具有相同的属性,但它享有类(class)的范围




C++ 标准,为了避免它们被多次重复声明,
在class的声明中只能够包括static member的原型(声明),
而不能够包括其定义(初始化操作)。
为了初始化一个静态数据成员,
我们必须在class之外(在全域范围内),
包括一个正式的定义,就像上面例子中做法一样。





在提醒一次,它其实是一个全域变量。唯一的不同是它的名字跟在class的后面。

就像我们会在class中包含static数据一样,我们也可以使它包含static 函数。
它们表示相同的含义:static函数是全域函数(global functions),但是像一个指定class的对象成员一样被调用。
它们只能够引用static 数据,永远不能引用class的非静态(nonstatic)成员。
它们也不能够使用关键字this,因为this实际引用了一个对象指针,
但这些 static函数却不是任何object的成员,而是class的直接成员。

posted on 2008-12-04 18:34 henry08 阅读(347) 评论(0)  编辑 收藏 引用 所属分类: C++


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理