现在的位置: 首页 > 综合 > 正文

Cannot assign to ‘self’ outside of a method in the init family

2018年05月12日 ⁄ 综合 ⁄ 共 312字 ⁄ 字号 评论关闭

有时候我们重写父类的init方法时不注意将init后面的第一个字母写成了小写,在这个方法里面又调用父类的初始化方法(self = [super init];)时会报错,错误信息如下:

error:Cannot assign to 'self' outside of a method in the init family

原因:只能在init方法中给self赋值,Xcode判断是否为init方法规则:方法返回id,并且名字以init
+大写字母开头+其他  为准则。例如:- (id) initWithXXX;

出错代码:- (id) Myinit{

self = [super init];

……

}

解决方法:- (id) initWithMy

{

self = [super init];

}

抱歉!评论已关闭.