为什么约定使用嵌套的alloc和init语句来创建实例?为什么不使用类似下面的东西?我唯一能想到的是你是否想要使用其中一种自定义init方法 - 还有其他正当理由吗?
NSDate *now = [NSDate date];
答案 0 :(得分:5)
NSDate *now = [NSDate date];
返回自动释放的日期,它是一个“方便”类方法
NSDate *now = [[NSDate alloc] init];
会返回保留日期。
通常[NSDate date];
是最佳选择。
答案 1 :(得分:-1)
如果您正在寻找持久性,特别是在比较日期时,您需要持续一段时间。使用单例方法[NSDate date]
,您将收到一个自动释放的对象,该对象在范围之外使用是不安全的。