NSDate - 默认初始化程序如何在堆上分配空间?
Posted
技术标签:
【中文标题】NSDate - 默认初始化程序如何在堆上分配空间?【英文标题】:NSDate - How does the default initializer allocate space on the heap? 【发布时间】:2013-05-03 00:06:43 【问题描述】:我知道显式分配和初始化对象是一种很好的做法,但我很困惑为什么以下示例中的 NSDate 实例不需要它:
NSDate *now = [NSDate date];
好像和这个一样……
NSDate *now = [[NSDate alloc] init];
我假设 date 类方法在堆上分配空间,但我只找到 NSDate.h 而不是 Apple 实际实现该方法的方式。
Apple 文档简单地说,“此方法使用类的默认初始化方法 init。”
【问题讨论】:
【参考方案1】:+[NSDate date] 是一个“便利构造函数”。通常,实现看起来与return [[[self alloc] init] autorelease]
非常相似。
【讨论】:
以上是关于NSDate - 默认初始化程序如何在堆上分配空间?的主要内容,如果未能解决你的问题,请参考以下文章