iOS知识点-2.请说明并比较以下关键词:__weak,__block

Objective-C Basics
  1. 请说明并比较以下关键词:__weak__block
  • __weakweak基本相同。前者用于修饰变量(variable),后者用于修饰属性(property)。__weak主要用于防止block中循环引用。
  • __block也用于修饰变量。它是引用修饰,所以其修饰的值是动态变化的,即可以被重新赋值的。__block用于修饰某些block内部将要修改的外部变量。
  • __weak__block的使用场景几乎与block息息相关。而所谓block,就是Object-C对于闭包的实现,闭包就是没有名字的函数,或者理解为指向函数的指针。
上一题 目录 下一题

你可能感兴趣的:(iOS知识点-2.请说明并比较以下关键词:__weak,__block)