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

类的静态变量

时间:2018-01-04 00:33:47      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:public   new   gtest   stdio.h   return   对象   str   test   body   

在C++类中可以定义静态成员变量(使用static声明)

1、静态成员变量属于整个类所有

2、静态成员变量的生命期不依赖任何对象

3、可以通过类名直接访问静态成员变量(设置成public),也可以通过对象名访问

4、所有对象共享类的静态成员变量

 

ps:静态成员变量需要在类外单独分配空间;静态变量处于全局数据区

#include <stdio.h>

class Test
{
private:
static int cCount;
public:
Test()
{
cCount++;
}
~Test()
{
--cCount;
}
int getCount()
{
return cCount;
}
};

int Test::cCount = 0;//在类外声明

Test gTest;

int main()
{
Test t1;
Test t2;

printf("count = %d\n", gTest.getCount());
printf("count = %d\n", t1.getCount());
printf("count = %d\n", t2.getCount());

Test* pt = new Test();

printf("count = %d\n", pt->getCount());

delete pt;

printf("count = %d\n", gTest.getCount());

return 0;
}

类的静态变量

标签:public   new   gtest   stdio.h   return   对象   str   test   body   

原文地址:https://www.cnblogs.com/judes/p/8185967.html

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