我对程序中的以下代码片段感到困扰。
如果我写
mo=[[myObj alloc] init];
失败了,但如果我写了
mo=[myObj alloc];
mo=[mo init];
它有效。这两种方法应该是等价的但不知何故我搞砸了。有光吗?
澄清:
myObj是类的名称
尝试分配不同类型的对象,未能找到正确的方法并最终远离初始化时,它失败了。
答案 0 :(得分:3)
我认为只有在-(id)init
类中myObj
方法被覆盖错误时才会发生这种情况。
也许您没有return self;
或者您没有返回类型(id)
。如果这些都不对,请提供有关如何实施-(id)init
方法的更多详细信息。