- (id)initWithCoder:(NSCoder *)aDecoder
{
dueDate = [NSDate date];
}
- (void)viewDidLoad
{
[super viewDidLoad];
NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease];
[formatter setDateStyle:NSDateFormatterShortStyle];
[formatter setTimeStyle:NSDateFormatterShortStyle];
self.lbDueDate.text = [formatter stringFromDate:dueDate];
}
在init方法中,我声明了dueDate = [NSDate date]。但是当我调试时,在这一行
self.lbDueDate.text = [formatter stringFromDate:dueDate];
输出:(NSDate *)dueDate = 0x0c497390 那发生了什么?
答案 0 :(得分:0)
这意味着对象已被-dealloc
编辑(除非它是nil
)。因此,在运行静态分析器并查看代码之后,与Zombies一起运行并更频繁地发送消息。
来源中的一个问题:dueDate = [NSDate date];
应为dueDate = [[NSDate date] copy];
。另一个问题是你不能通过超类来打电话。在-initWithCoder:
。