声明对象objective-c之前的指针

时间:2011-07-05 08:08:01

标签: objective-c pointers declaration

你能告诉我一件事:这是一个错误还是我们可以在没有“*”的情况下写出“结果”:

@implementation Person (Sorting)  
   - (NSComparisonResult)compareByName:(Person *)person2 {    
        >>//here :  
        >>NSComparisonResult result = [self.lastName caseInsensitiveCompare:person2.lastName];  
        if (result == NSOrderedSame) {  
            return [self.firstName caseInsensitiveCompare:person2.firstName];  
        }  
        return result;  
   }  
@end  

由于

1 个答案:

答案 0 :(得分:3)

caseInsensitiveCompare方法返回NSComparisonResult,因此不使用*绝对正确。

在objective-c中你必须使用指向obj-c 对象的指针,但NSComparisonResult只是一个枚举(即普通整数)所以你可以自由在没有指针的情况下使用它。