关于error:Cannot assign to ‘self’ outside of a method in the init family

释放双眼,带上耳机,听听看~!

问题:


有时候我们重写父类的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];
}

 

人已赞赏
iOS文章

使用cocoapods导入第三方类库后 头文件没有代码提示?

2020-5-14 17:02:04

iOS文章

iOS .pch 文件找不到 XCTest/XCTest.h' file not found ..

2020-5-14 18:16:51

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索