2

我正在阅读 Parse 的 iOS 开发人员指南。我很困惑它在哪里显示PFObject使用下标语法分配给键。

PFObject *gameScore = [PFObject objectWithClassName:@"GameScore"];
gameScore[@"score"] = @1337;
gameScore[@"playerName"] = @"Sean Plott";
gameScore[@"cheatMode"] = @NO;


PFObject *gameScore = [PFObject objectWithClassName:@"GameScore"];
gameScore[@"score"] = @1337;

首先我认为PFObject必须扩展NSMutableDictionary,但PFObject只是扩展NSObject。它的表现如何NSMutableDictionary

我怎样才能为我自己的班级做到这一点?

4

2 回答 2

4

NSHipster 给出了答案:

类似地,可以通过声明和实现这些方法将自定义键下标添加到您的类中:

- (id)objectForKeyedSubscript:(*KeyType*)key;
- (void)setObject:(id)obj forKeyedSubscript:(*KeyType*)key;
于 2015-09-20T15:54:45.350 回答
3

设置键值的语法由编译器转换为对该方法的调用,setObject:forKeyedSubscript并且可以与提供这种方法的任何类一起使用,而不仅仅是NSMutableDictionary.

有关详细信息,请阅读 Clang 编译器文档的Objective-C Literals部分中的“对象索引”。

高温高压

于 2015-09-20T15:56:24.600 回答