从目标C中的函数返回多个值

时间:2017-07-19 06:00:36

标签: objective-c function methods return tuples

如何从Objective-C中的方法返回两个或多个相同/不同类型的单独数据值?

我想我只是不理解返回多个值的语法。

下面是我在swift中使用的代码,我遇到了目标-C版本的问题。

func getData() -> (Int, Int, Int) {
    //...code here
    return ( hour, minute, second)
}

1 个答案:

答案 0 :(得分:8)

你不能在objective-c中这样做。最佳选择是通过引用使用参数。这样的事情。

- (void)getHour:(int *)hour minute:(int *)minute second:(int *)second {
    *hour = 1;
    *minute = 2;
    *second = 3;
}

并像这样使用它。

int a,b,c;
[self getHour:&a minute:&b second:&c];
NSLog(@"%i, %i, %i", a, b , c);