【发布时间】:2012-07-10 15:34:03
【问题描述】:
一个 .cpp 文件有一堆类定义。一个类有一个私有静态成员,如下所示:
class SomeClass:public SomeParentClass
{
private:
static int count;
};
在类被定义之后,count属性初始化为零,如下所示:
int SomeClass::count = 0;
来自 Java/C# 世界,我无法理解 count 在什么时候初始化为零?是在SomeClass 被实例化的时候吗?还有,类定义有count类型为int,为什么SomeClass::count前面必须有int?
我的最后一个问题是,既然 count 属性是私有的,当它在类定义之外初始化时,它的可见性不应该受到限制吗?
谢谢
【问题讨论】:
标签: c++ types static initialization access-modifiers