作者herbacin (herbacin)
看板MacDev
標題[問題] 關於不同class 共用變數
時間Mon Jan 16 13:22:39 2017
請問各位
假設我有多個viewcontroller, 每個viewcontroller都想
共用某個物件, 例如玩家資訊User Class,
那User Class一般是否都會寫在
AppDelegate.swift裡面呢?
例如 :
AppDelegate.swift
class AppDelegate: UIResponder, UIApplicationDelegate {
var user = User()
}
當B Class要使用的時候
let app = UIApplication.shared.delegate as! AppDelegate
let player = app.user
一般是否都是這樣的使用呢?
因為AppDelegate這要是管理app生命週期, 才會想是否可以寫在這
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.61.66.43
※ 文章網址: https://webptt.com/m.aspx?n=bbs/MacDev/M.1484544162.A.9B3.html
1F:推 tentenlee: 在宣告class外面那層宣告變數就是全域變數了 01/16 13:24
2F:推 darktt: 不要將要保存放在 AppDelegate 中,這是不合物件導向規則 01/16 14:47
3F:→ darktt: 的,你還有UserDefaults可以放資料,不然就是開一個單例 01/16 14:47
4F:→ darktt: 的物件來保存暫時的資料 01/16 14:47
5F:→ herbacin: 我希望可以存在記憶體裡面, 因為其他viewController 01/16 15:13
6F:→ herbacin: 都有可能被釋放 01/16 15:14
7F:推 tkdmaf: 你可以寫個struct用靜態呼叫。也是個方法。 01/16 16:03
8F:→ herbacin: 了解 謝謝喔 01/16 16:25
9F:→ bigbearlazir: singleton instance不就是在記憶體上嗎 01/16 18:38
10F:→ bigbearlazir: singleton instance不等於viewcontroller 01/16 18:39
12F:→ gundam00: 教你如何用最簡單的方式寫出singleton的class 01/17 00:05
13F:推 a26364177: Singleton 01/18 01:47