Chinaunix首页 | 论坛 | 博客
  • 博客访问: 350908
  • 博文数量: 63
  • 博客积分: 1412
  • 博客等级: 中尉
  • 技术积分: 648
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-10 23:07
文章分类

全部博文(63)

文章存档

2012年(42)

2011年(21)

我的朋友

分类: C/C++

2012-03-12 11:05:36

1.c 类中的静态成员变量使用。

在c 类中可以使用静态成员变量。分为公有静态成员变量和私有静态成员变量。它们如何初始化和访问呢?

例如:

点击(此处)折叠或打开

  1. class _t

  2. {

  3. public:
  4.  static int a;
  5. private:
  6.  static int b;
  7.   

  8. }

公有静态成员变量:

初始化:在类外进行初始化: int _t::a = 0;

访问:(1)_t::a = 0; (2) class c; c.a = 0;

 

私有静态成员变量

初始化:在类外,同上:int _t::b = 0;

访问:只能通过静态成员函数访问。

 

具体例子如下:

点击(此处)折叠或打开

  1. #include <iostream>

  2. class _s
  3. {
  4. public:
  5.     _s()
  6.     {
  7.         std::cout << "_s() start" << std::endl;        
  8.         //test = 0;
  9.     }

  10.     static void a_print()
  11.     {
  12.         std::cout << b << std::endl;
  13.     }
  14.     
  15.     static int a;
  16. private:
  17.     static int b;
  18. };

  19. int _s::a = 0;
  20. int _s::b = 0;
  21. int main()
  22. {
  23.     //访问私有静态成员变量
  24.     _s::a_print();
  25.     
  26.     //下面这句报错.
  27.     //error:'int _s::b' is private
  28.     //std::cout << _s::b;
  29.     
  30.     //访问公有静态成员变量
  31.     std::cout << _s::a << std::endl;
  32. }


 

阅读(1031) | 评论(0) | 转发(0) |
0

上一篇:并查集运算

下一篇:c++ virtual 析构函数

给主人留下些什么吧!~~