oc语言初始化遇到的问题

为什么老报错啊,构造方法初始化父类那错了,求大神解答,急!图片

initWith试试看,你的好像小写了

init方法中不能给self赋值

明显少了return self;

加上 return self报什么错?

你可以

if ( ! self) {
self = [[XXX alloc] init];
}

 self.XXX = XXx;

 return self;

调用super init是重写init方法的时候调用的,你的便捷构造方法应该用 self = [[XXX alloc] init]; ,然后对self相应的元素赋值

在if的条件判断中,要用 == 不能是 =,==代表逻辑判断,= 代表赋值运算
还有就是如果是有返回值的,一定要return
你把代码改成这样就可以了
self = [super init];
if(self){
//你的代码
}
return self;

是不是父类没有 init方法
检查一下父类

==号,
还有return self
init方法重写下看看

估计是系统判断你的方法开头是initwith而不是init所以禁用了!