我仍然在学Objective-C,这段代码看起来很奇怪,很难得到一个好的搜索结果。Or和返回值说明
@interface Practice : NSObject
{
NSString *name;
NSString *sortKey;
}
- (NSComparisonResult)sortPack:(Practice *)other
{
return [[self sortKeyOrName] caseInsensitiveCompare:[other sortKeyOrName]];
}
我的问题是:
的 “或”[自sortKeyOrName]可以是两个变量?如果是这样,它如何确定要采用哪个变量?
该调用过程如何工作?这是我对此的看法,它比较其他和sortKeyOrName然后返回,如果它的asc,desc,或者相同,并且返回的值被赋值给[self sorkeyOrName]?
谢谢。
从哪里得到这段代码? – CRDave
请阅读http://developer.apple.com/library/ios/#referencelibrary/GettingStarted/Learning_Objective-C_A_Primer/主要“方法和消息”。 – Popeye
'name'和'sortKey'与'sortPack'函数无关。 '[self sortkeyOrName]'是一个方法调用。 '[[self sortKeyOrName] caseInsensitiveCompare:[other sortKeyOrName]];'的结果将作为'NSComparisonResult'返回给'sortPack:'方法的任何调用。 – Popeye