我一直在尋找解決方案,如何創建一個單線程模式是線程安全的IOS。 我一遍又一遍地找到了相同的解決方案,但是當我初始化對象時指針仍然爲空。正如你從截圖中可以看出的那樣。Singleton(sharedInstance)無推薦初始化後
這很奇怪,因爲互聯網上沒有人似乎有這個問題到目前爲止。我自己需要比較一下,如果sharedInstance被初始化爲在其他地方輸入某段代碼,它會在初始化後告訴我它爲零。
這是怎麼回事?任何人都有線索嗎? 我想了解! :d
由於提前, 歡呼聲, 雷神
//爲什麼這不是一個重複:// 這個問題是不是正確的初始化它是關於爲什麼sharedInstance沒有表現得像它應該在之後。我仍然遇到無法將它與nil比較的問題,甚至在sharedInstance方法中有一個比較,以防止覆蓋單例。如何防止覆蓋會是我的後續問題?我甚至用init中設置的另一個BOOL嘗試了它。結果是,if(!bool)將被視爲true,儘管我的調試器說bool == yes->!bool應該是false。
問題:爲什麼我的指針實例正確地返回並在外部(在調用方方)結果爲零? 要清楚從外面打電話:
ControlSchemes *cs = [ControlSchemes sharedInstance];
將根據調試器進入sharedInstance的代碼有一個有效的指針在返回一個有效的對象,但屆時將有CS裏面零加入後。爲什麼?
//
謝謝.. 。這是一個很好的提示......但正如Jaegers看到的那樣(第一個屏幕截圖[self alloc]),我仍然可以得到指向return語句的指針,但在調用方法中返回的指針爲零。這方面的任何線索? – Thor