无法将对象添加到NSarray

时间:2014-08-31 06:09:52

标签: objective-c

我在头文件中定义了一系列餐馆

@property (nonatomic, strong) NSMutableArray *resPool; //pool of restaurants

现在我尝试通过在.m文件中执行以下操作将餐馆对象添加到此数组:

id restaurant = [[Restaurant alloc] initWithResName:resName]
[self.resPool addObject:restaurant];// add the restaurant to the res pool array

运行此代码时,resName NSArray仍为空。我不确定我在做什么。我只是想提升目标C.有人可以帮助我吗?

2 个答案:

答案 0 :(得分:1)

你不是在说resPool = [NSMutableArray alloc]init];。将内存分配给resPool,然后对它们执行操作。通常,内存分配在初始化程序中完成。这是你的任何init方法。

答案 1 :(得分:1)

我认为你没有instantiated数组,因此你无法添加一个对象。

尝试添加:

- (NSMutableArray *)resPool {
    if (!_resPool) _resPool = [[NSMutableArray alloc]init];
    return _resPool;
}

它在Objective-C中被称为懒惰的异形,它很常见