【发布时间】:2014-03-25 22:01:29
【问题描述】:
我花了一整天的时间来深入了解 C++ 中的 OOP。 这可能是个愚蠢的问题,我想这只是我脑子里的一个结或错误的设计,但也许你知道该怎么做。
我有一个带有指向一大堆“子”类的指针数组的“顶级”类。 所有“子”类都有一些计算要做,如果它们完成了,他们必须向“顶部”提供反馈。所以我认为使用静态int“计算”让它变得简单 如果每个人都完成了,则为 0。(否则为 1 或 5,具体取决于尚未计算多少“子”(例如,在加载新的原始数据之后))。
好吧,到目前为止一切都很好,但是如果我想加快速度,用它自己的子对象创建一个新的“顶部”对象会发生什么,那么它们都将具有相同的静态值(!)。当然,我首先测试了它。然后我试图让“sub”成为“top”的私有类(只是一个新手的想法)。但是不...,静态是静态的,它们都具有相同的值;)
我仍然有想法,例如让所有“sub”中的指针指向顶部的成员,然后让他们更改它。这个指针对于不同的顶部会有所不同。
我想知道是否有任何“官方”解决方案可以为不同的对象组(一个类)分配不同的静态值。
顺便说一句:如果 sub 通过指针算法访问 top 的私有值会导致错误吗?
来自新手的问候
本尼
【问题讨论】:
-
你为什么对
static如此着迷?这只是错误的想法。
标签: c++ oop static-members