委托是什么
更新时间: 2025-05-07 05:40:38
委托 一个对象保存另一个对象的引用,被引用的对象实现了事先确定的协议,该协议用于将引用对象中的变化通知给被引用对象。 委托和委托方双方的property声明属性都是assign而不是retain为了避免循环引用造成的内存泄露循环引用的问题这样理解 比如在main函数中创建了两个类的对象A和B,现在引用计数是1。
现在让A和B互相引用A有一个属性是B对象,属性说明是retain;B有一个属性是A对象,属性说明是retain,现在两个对象的引用计数都增加1,都变成了2。现在执行[A releasw];[B release];此时创建对象的main函数已经释放了自己对对象的所有权,但是此时A和B的引用计数都还是1,因为他们互相引用了。
这使你发现A和B将无法释放,因为要想释放A必须先释放B,在B的dealloc方法中再释放A。同理,想要释放B必须先释放A,在A的dealloc方法中再释放B。所以这两个对象将一直存在内存中而不释放,这就是所谓的循环引用的问题。
委托是什么 相关文章
上一篇:富贵树叶子为什么会有油
下一篇:高德地图如何离线导航
其他相关资讯
- 广东省惠州市龙门县气象台发布暴雨黄色...
- 江苏省盐城市阜宁县气象台发布大雾黄色...
- 广西壮族自治区百色市凌云县气象台发布...
- 广东省韶关市新丰县气象台发布暴雨黄色...
- 山东省滨州市气象台发布大雾橙色预警信...
- 贵州省遵义市汇川区气象台发布雷电黄色...
- 广西壮族自治区梧州市藤县气象台发布雷...
- 广东省珠海市斗门区气象台发布暴雨橙色...
- 山东省青岛市平度市气象台发布大雾黄色...
- 山东省青岛市莱西市气象台发布大雾橙色...
- 贵州省遵义市余庆县气象台发布雷电黄色...
- 广东省珠海市气象台发布暴雨橙色预警信...
- 广东省清远市英德市气象台发布暴雨橙色...
- 山东省青岛市黄岛区气象台发布大雾橙色...
- 广东省河源市东源县气象台发布雷雨大风...
- 广东省河源市东源县气象台发布暴雨黄色...
- 广东省清远市英德市气象台发布暴雨黄色...
- 广西壮族自治区柳州市融水县气象台发布...
- 广东省韶关市新丰县气象台发布雷雨大风...
- 广东省清远市佛冈县气象台发布暴雨黄色...
天气预报导航
天气资讯
更多 >>