从理论上讲,ObjC中new / init能否返回nil?

时间:2017-09-18 11:29:28

标签: objective-c

默认的new /(alloc + init)可以在objective-c中返回nil吗? 我发现很难相信ObjC中的默认构造函数可以返回该值。

可能没有记忆情况?

1 个答案:

答案 0 :(得分:0)

来自init的文档:

  

<强>初始化

     

由子类实现,在分配了内存之后立即初始化一个新对象(接收者)。

     

返回值

     

初始化对象,如果由于某种原因无法创建无法导致异常的对象,则为nil。

     

<强>讨论

     

...如果无法初始化新对象,则该方法应返回nil。 ...

结论:NSObject的子类可以从nil返回init

阅读材料:

init

Object Initialization