繁体   English   中英

Objective-C - 静态字段或基本类型的ivar

[英]Objective-C - Static field or an ivar for a primitive type

我最近陷入了在ivar和静态场之间进行选择的困境。 例如:我需要在红色和绿色之间切换红绿灯。 所以我放了一个名为isRed的标志。到目前为止,我已经使用了一个静态bool用于此目的,它已经很好地服务了。 现在我想我也可以使用实例变量,但我不知道它们之间的区别。这两种方式之间真正的区别是什么?

当您知道应用程序中存在(并且将来)只有一个交通信号灯时,您可以使用具有静态存储持续时间的变量(您称之为静态字段)。

在几乎所有情况下,最好将状态放入控制状态的类中 - 即使用ivar。 这种方法称为“面向对象设计”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM