切勿在未重新分配指向该对象的任何指针的情况下初始化对象。例如,不要这样做:
NSObject *someObject = [NSObject alloc];
[someObject init];
如果对 init 的调用返回一些其他对象,您将得到一个指向最初分配但从未初始化的对象的指针。
实际上,这是Apple的ObjC文档中的一个示例,但我对此不太清楚,即为什么NSObject *someObject = [[NSObject alloc] init]
promise可以返回我们刚需要的对象,而NSObject *someObject = [NSObject alloc]; [someObject init];
不能?