【发布时间】:2013-07-31 19:56:42
【问题描述】:
我有一个关于类成员变量使用的问题。
假设我有一个类ABC,并且我有一个成员变量Buffer 在类中声明为public,即使在类被销毁后,我如何使用变量buffer?
我可以将变量buffer 声明为静态吗?即使在类被销毁后,这是否允许我访问变量?
【问题讨论】:
-
为什么不在类销毁之前将成员变量分配到仍在范围内的其他地方?
-
你不会破坏一个类,你会破坏一个类的instances。静态类成员是类的一部分,而不是它的实例。这给你一个提示吗?
-
@RobertHarvey 好吧,我希望即使在类被销毁后也可以访问该变量。我不想将变量复制到仍在范围内的另一个变量。我有一个需要这样做的实时应用程序
-
如果您将其声明为静态,那么它可以在该类的任何单个实例的生命周期之外访问,但它也将由该类的所有实例共享。如果这是不可接受的,那么您将不得不遵循@RobertHarvey 的建议并在销毁之前将该缓冲区保存在某处。
标签: c++