IOS中使用block的错误
2014-04-24 来自:骄傲的阿洁头 1 人回应

在ios应用中一个单例模式:

void (^ myBlock)() = ^(){ [self doStuff]; };

然后就得到这样的错误:

use of undeclared identifier self

doStuff是单例模式的方法。假如在其他方法中声明这个block,Xcode运行正常。

请各位前辈帮我解释一下原因,谢谢

2014-05-08 来自:傻不拉叽的二货

每个方法都作为隐藏参数自身传递,如果在方法中的block可以获取self,如果不在方法中block,self就不是变量,block就不能‘see it’。

您的回应

你还未登陆,不能回应!登陆