簡體   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