iOS面试题:为什么代理要用weak?代理的delegate和dataSource有什么区别?block和代理的区别?

  • 1、因为用weak修饰的对象引用计数不会+1.好吧。说白了就是不会造成循环引用。0.0~!

  • 2、delegate偏重于用户交互的回调。dataSource偏重于数据的回调。

  • 3、首先共同点都是实现回调的方式。算了直白点说就是一个一对一,一个一对多。一个编写简单,一个实现繁复。
    对于什么时候用block什么时候用代理简单来说就是公共接口,方法较多,回调类型较多可以选择用代理。对于异步和简单的回调用block好一点。


更多:iOS面试题合集

你可能感兴趣的:(iOS面试题:为什么代理要用weak?代理的delegate和dataSource有什么区别?block和代理的区别?)