作者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/cn.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