2011-01-13 31 views
-1

在C++中,我在类中有一个静态成员变量。如何正确传递一个静态成员变量的值?

然后我将这个静态成员变量传递给一个struct初始化数组。现在我的问题是,结构中该成员的价值消失了。

请解释一下我是否缺少对静态成员变量的一些理解。静态成员是否有限制传递自己的价值?

请指教。

非常感谢

+1

请发布您的代码,这将有助于我们更好地了解 – ckv 2011-01-13 10:07:19

回答

1

静态成员变量相似,但常规全球:

  • 它的名字可以被限制在它所属的类。这个类就像一个命名空间,但是功能更强大,因为它可以在模板中使用。

  • 它可以是保护或私人的,在这种情况下,只有那些有权访问该类的人才能访问该成员。

有一个这样的实例,而不是每个对象一个。

私有静态成员变量通常可以替换为该类的编译单元的匿名名称中相同类型的“隐藏”变量。这是一个更好的选择,因为您不需要在头文件中公开您的类的实现(通常是私有成员)。

给出一个重复你的错误的例子是有用的,所以我们可以看到你正在尝试做什么以及为什么它不起作用。