在我的Singleton中初始化NSMutableArray时遇到麻烦

时间:2009-11-04 17:05:30

标签: objective-c singleton

嘿伙计们。我得到一个奇怪的错误,我无法弄明白。这发生在使用单例模式创建的类中:

- (NSMutableArray *) getCurrentClasses
{
    NSMutableArray *current_classes = [[NSMutableArray init] alloc];
    NSLog([NSString stringWithFormat:@"%d", [current_classes count]]);
    ...
}

当我运行它时,即使我只是初始化了current_classes,它在日志中给了我这个错误:

*由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'* - [NSCFArray count]:发送到未初始化的可变数组对象的方法'

有谁知道这是怎么回事?我把它初始化为最后一行。

由于

1 个答案:

答案 0 :(得分:26)

您混淆了alloc / init来电。 alloc排在第一位。它应该是:

NSMutableArray *current_classes = [[NSMutableArray alloc] init];