是否所有实例共享方法体中的静态变量

时间:2010-03-04 15:45:23

标签: c++

class MyClass
{
public:
 void method2()
 {
  static int i;
  ...
 }
};

MyClass的每个实例是否会共享一个值i,或者每个实例都有自己的副本?

2 个答案:

答案 0 :(得分:7)

MyClass的每个实例都会共享一个值i

答案 1 :(得分:7)

static,此处与任何常规函数一样运行。

这意味着istaticMyClass::method2,因此只有一个实例。

每个对象有一个变量实例是实例变量的用途。