Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 在';自我';未设置为';[(超级或自我)初始化…]';_Xcode_Instance - Fatal编程技术网

Xcode 在';自我';未设置为';[(超级或自我)初始化…]';

Xcode 在';自我';未设置为';[(超级或自我)初始化…]';,xcode,instance,Xcode,Instance,如果我分析我的项目,我会得到以下警告: “self”未设置为的结果时使用的实例变量 “[(超级或自我)初始化…” 我必须改变什么 谢谢 如今,苹果的官方建议是: - (id)init{ if(![super init]){ return nil; } _rssItems = [[NSMutableArray alloc]init]; return self; } 其思想是允许init(特别是在本例中,[super init])返回除self之外的

如果我分析我的项目,我会得到以下警告:

“self”未设置为的结果时使用的实例变量 “[(超级或自我)初始化…”

我必须改变什么


谢谢

如今,苹果的官方建议是:

- (id)init{
    if(![super init]){
        return nil;
    }
    _rssItems = [[NSMutableArray alloc]init];
    return self;
}
其思想是允许
init
(特别是在本例中,
[super init]
)返回除self之外的对象,在这种情况下,预期的行为是使用该对象——最简单的处理方法是将
self
设置为
super
返回的任何对象。还要注意,
返回selfself
是否为零,code>都可以正常工作,因此
if
会反转


当然,大多数类都不会执行这种切换技巧——但无论如何,这是一种很好的做法,因为苹果希望每个人都能在其
init
中使用这种模式,所以即使您的子类当前在没有分配给
self
的情况下工作,他们将来可以在没有任何警告的情况下轻易地改变这种行为。

谢谢你,但现在我的应用程序崩溃了,因为EXC\u坏访问。。。奇怪的是,上一期已经不见了。
- (id)init{
    self = [super init];
    if(self){
        _rssItems = [[NSMutableArray alloc]init];
    }
    return self;
}