“静态”类成员

问题描述:

例如,xstatic在类的定义中。 我应该这样用x“静态”类成员

class_name::x;而不是instance_of_class.x;

我的问题是,后一个也是合法的吗?或者只是不正确?

谢谢。

这是合法和正确的,但普遍的共识是使用范围分辨率运算符

class_name::x 

而不是

instance.x 
+3

我使用'.'的唯一时间是在模板函数中,它有时只是一个静态成员。 – 2012-02-09 21:47:46

都是有效的。更喜欢使用第一个的理由是让你的代码读者理解成员是静态的,属于整个对象类而不是每个特定的实例。