【发布时间】:2016-08-09 14:14:39
【问题描述】:
UserManagerViewController 是一个为我的其余视图控制器管理用户对象(创建/释放)的类(这样我就不会创建多个用户对象),我有:
var resources = Dictionary<Int, T>()
每当我需要资源时,我都会这样做:
let id = data["id"].intValue
self.resources[id] = User(data: data) //Create a User object and set it to the dictionary
我有其他 ViewController 在它想使用它时“挂在”这个对象上:
var users = [User]()
users.insert(<The pointer to resources[id]>, atIndex: 99)
//later on...
users.removeAtIndex(99) //this should release its hold
稍后,当我需要释放最终创建的对象时,我会这样做:
resources.removeValueForKey(id)
此方法能否正确确保 User 实例简单地消失,因为它的双亲都释放了它?
【问题讨论】:
-
User是类还是结构?
标签: swift