alloc initWithObjects vs arrayWithObject

时间:2013-02-18 09:04:58

标签: iphone ios

我不明白为什么我写这些代码

icons = [[NSArray alloc] initWithObjects:
             @"appointment",
             @"work",
             @"anniversary",
             @"me",
             nil];
该应用程序崩溃了。但后来我用这些代码替换了

icons = [NSArray alloc] arrayWithObjects:
             @"appointment",
             @"work",
             @"anniversary",
             @"me",
             nil];

并且应用程序没有崩溃。 但这些方法之间存在相同的影响! 我不知道为什么?你可以帮帮我吗?

1 个答案:

答案 0 :(得分:1)

  1. initWithObjects方法意味着您必须在不需要时释放数组的对象,因为这是实例方法并且有更多详细信息click

  2. arrayWithObjects方法意味着您不需要在不需要时释放数组的对象,因为这是类方法并且有更多详细信息click

  3. 如果您对要点不清楚,请回复我。