0

如果为可变数组定义属性...

@property (nonatomic, strong) NSMutableArray *objects;

然后你开始编写函数......- (void)addObje...然后自动完成将完成然后命名并给你......

- (void)addObjectsObject:(<#object-type#> *)object
{
}

我的问题是,我应该如何使用这个功能?

我必须打电话吗

[self addObjectsObject:someObject];

还是我可以做

[self.objects addObject:someObject];

即 NSMutableArray 属性会知道我已经覆盖了添加对象函数并使用我定义的函数来添加它吗?

4

1 回答 1

2

你需要使用[self addObjectsObject:someObject];.

[self.objects addObject:someObject];将直接在属性上调用 NSMutableArray 的方法。

编辑:

更多信息:

[self addObjectsObject: someObject];//calls the method - (void)addObjectsObject:
[self.objects addObject: someObject];//calls the property directly

如果你想覆盖你的方法,你需要子类或者你可以创建一个类别,但不要使用相同的方法名称来覆盖现有的类别。

于 2012-12-13T12:05:04.830 回答