目标C:NSRange或类似浮动?

Fra*_*kZp 4 typedef objective-c nsrange

对于某些方法,我希望它们返回一系列值(从:235,到:245).我使用它NSRange作为返回值

- (NSRange)giveMeARangeForMyParameter:(NSString *)myParameter;
Run Code Online (Sandbox Code Playgroud)

只要返回值是一个integer范围(例如位置:235,长度:10),这就可以正常工作.

但是现在我遇到了需要返回float范围的问题(例如位置:500.5,长度:0.4).我在doc中读到了NSRange一个typedefed结构NSUIntegers.是否可以为float范围键入另一个结构?如果是这样,是否可以采用类似的方法NSMakeRange(NSUInteger loc, NSUInteger len)来创建这些float范围?

das*_*ght 8

虽然你可以重复使用图形库中的多个"对象对"之一(你可以从挑选CGPointCGSize或其NS...等价物)的struct这些对象的背后s为如此简单,这将是更好地创建自己的:

typedef struct FPRange {
    float location;
    float length;
} FPRange;

FPRange FPRangeMake(float _location, float _length) {
    FPRange res;
    res.location = _location;
    res.length = _length;
    return res;
}
Run Code Online (Sandbox Code Playgroud)