iOS版 - “添加”出现在codeSense autosynthesized性能测试方法(iOS

2019-08-17 11:09发布

我刚刚创建具有以下属性在iOS类:

@property (nonatomic, strong) NSString* foo;
@property (nonatomic, strong) NSObject* bar;
@property (nonatomic) CGRect fubar;

我没有把在这些属性的任何@synthesize或明确的高德。 然后我走进了实现文件,并开始按照以下步骤创建一个方法:

-(void) add

我离开光标在单词“add”的结束。 那么下面的方法名称代码意义上弹出:

addBar: (NSSet*) objects
addBarObject: (objectType *) object
addFoo: (NSSet*) objects
addFooObject: (objectType *) object
addFubar: (NSSet*) objects
addFubarObject: (objectType *) object

这些是什么方法呢? 是否有他们的任何文档?

Answer 1:

这是一类可以实现以支持键-值编码为可变的多对多关系,请参阅访问方法可变的无序访问者在“键-值编码编程指南”:

为了将键 - 值编码投诉的可变无序一对多的关系,必须实现以下方法:

-add<Key>Object:-add<Key>: 至少其中一种方法必须执行。 这些是类似于NSMutableSet方法addObject:

同样的“奇怪”的自动完成功能发生了其他键 - 值编码存取方法,例如:

- (void)remove...
- (void)intersect...
- (NSUInteger)countOf...


文章来源: iOS — “add” methods appearing for autosynthesized properties in codeSense