ObjC-Почему это неправильно, когда реализуют методы [alloc] и [init] раздельно? [Дубликат]

На этот вопрос уже есть ответ здесь:

Почему я не должен разделять alloc и init? 4 ответа

Никогда не инициализируйте объект, не переназначая указатель на этот объект. Как пример, несделать это:

NSObject *someObject = [NSObject alloc];
[someObject init];

Если вызов init возвращает какой-то другой объект, выостанется указатель на объект, который был первоначально выделен, но никогда не инициализирован.

На самом деле, это пример в Apple,документ ObjC, но ям, не совсем понятно с этим, то есть почемуNSObject *someObject = [[NSObject alloc] init] могу обещать вернуть предмет, который нам просто нужен, покаNSObject *someObject = [NSObject alloc]; [someObject init]; не могу?

Ответы на вопрос(1)

Ваш ответ на вопрос