覆盖iOS中的默认init函数

jas*_*ite 4 ios

最初,我有一个默认的初始化函数

 -(id) init
   {
    if (self=[super init])
    {
      ......
     }
    return self;
   }
Run Code Online (Sandbox Code Playgroud)

但是,我喜欢覆盖init函数以传入自定义对象或其他对象

 -(id) initWithScore:(NSString*) score
    {
    if (self=[super init])
Run Code Online (Sandbox Code Playgroud)

现在有一个错误,说[super init]函数只能用 - (id)init函数调用.

那么我该怎么做才能解决它所以我可以传入对象并使用self = [super init]?

错误:无法在init系列中的方法之外分配给self.

Sas*_*sho 23

我试图将一个projet转换为ARC,并在创建一个新的并包含旧的文件之后 - 我得到的一个问题是

无法在init系列中的方法之外分配给"self"

选择器名称必须以init- 不仅仅是在我的情况下init选择器是:

-(id)initwithPage:(unsigned)pageNum {...}
Run Code Online (Sandbox Code Playgroud)

注意小'w'.

我已将其更改为:

-(id)initWithPage:(unsigned)pageNum {...}
Run Code Online (Sandbox Code Playgroud)

注意首都'W'!

我的问题解决了.

我希望这可以帮助别人.