我想要一個像Java一樣的靜態布爾值。這個布爾值只爲整個類創建一次,無論它有多少實例。Objective C - 安全地創建一個靜態布爾值?
我在這裏看了一些帖子。他們中的一些提示在.m file
,初始化這個變量像
static BOOL myBool = NO;
,然後有一個getter和setter函數。但是我被告知這在Objective C中不安全和乾淨。一個更安全,更乾淨的方法是使用init靜態變量。但如果我初始化它的功能,如
+(Bool)getMyBool {
static BOOL myBool = NO;
return myBool;
}
這樣myBool將永遠不會。如果我想在之後設置此布爾值,該怎麼辦?如果我再次調用static BOOL myBool
,它會給我相同的布爾值嗎?
「這樣myBool將永遠不會。」 - 你似乎錯過了「靜態」這一點。 –
「我被告知...」誰?在什麼情況下? – Eiko
原始碼絕對沒問題。誰告訴你這不安全,乾淨就會面臨一些面向對象的疾病。 – gnasher729