C++中,类里面定义的静态数据变量,它与全局变量的区分和联系? 我怎么感觉他俩很像啊!!!

如题所述

其实静态变量跟全局变量差不多,都不是在类里面定义的,必须在类外定义。但是类里面的静态变量,调用是必须加上类名修饰,否则不能知道那个静态变量属于哪个域

class A
{
public:
static int a;
};

int A::a = 100; // 类外定义,必须加上A::修饰
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-11-17
“静态变量”就是在本函数内有效··且在函数结束的时候,不会释放内存,也就是他的值不会改变··
所谓的“全局变量”就是这个变量在整个程序中有效··使用的时候··不需要再去重新定义··
第2个回答  2012-11-17
不一样;
在类外或者类的成员函数外用静态数据变量时,你必须说明它是属于哪个类的;
而且静态数据变量只能在类外赋值。
第3个回答  2012-11-24
静态变量必须类外初始化
必须 类名::变量名 = 初始值;
除此之外没有差别
第4个回答  2012-11-17
全局变量定义过就不能改变它的值了,
静态的值可以改变,而且改变是全局性的
相似回答
大家正在搜