摘要: 首先delegate要使用assign而不是retain,这个问题大家通过看iOS的api就可以了,最典型的是tabView里面的delegate和datasource都是用的assign。那为什么要使用assign而不是retain呢?其实这个问题从很多方面可以说通的。首先,考虑类的设计模式,类与类只见的大体关系有继承和聚合的关系,当我们使用聚合的时候该对象就拥有聚合的对象,这时候我们就需要retain使引用计数器+1来控制该对象的内存管理,所以我的感觉retain和copy的一项能力就是拥有该对象的内存管理权。下面就得说delegate了,一个对象没必要管理自己delegate的生命周期, 阅读全文
posted @ 2012-08-01 12:48 小苹果一枚 阅读(347) 评论(0) 推荐(0) 编辑