hol*_*ety 5 objective-c nsinvocation objective-c-blocks
当我说阻止我的意思是:
^(int a) {return a*a;};
Run Code Online (Sandbox Code Playgroud)
此外,块仅支持iOS4及更高版本.
这两者有什么区别?
AnNSInvocation是发送给对象的消息(使用选择器),带有可选参数,可以稍后(或现在)执行,并且在当前上下文之外(当然要注意复制的内容与移动时保留或引用的内容)。NSInvocation这样做的好处是您可以有选择地复制/引用您所需要的内容。
该块是一个秘密的本地函数定义,它能够捕获当前线程上下文的部分或全部。它也比 an 更容易配置,NSInvocation因为它自动捕获、复制和保留线程(或作用域)本地上下文。与函数类似,块可以稍微增加二进制大小。如果从本地上下文中取出(例如,当您复制块时),与NSInvocation.
| 归档时间: |
|
| 查看次数: |
1050 次 |
| 最近记录: |