2017-07-19 3 views
0

Wie gebe ich zwei oder mehr separate Datenwerte desselben/unterschiedlichen Typs aus einer Methode in Objective-C zurück?Rückgabe mehrerer Werte aus einer Funktion in Ziel C

Ich glaube, ich verstehe einfach nicht die Syntax für die Rückgabe mehrerer Werte.

Unten ist der Code, den ich in swift verwende, ich habe Probleme mit der objektiven -C-Version.

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

Fügen Sie stattdessen Daten in NSDictionary hinzu. – Balasubramanian

+1

für gegebenes Beispiel swift erstellt intern ein Modellobjekt/struct mit 3 Int-Eigenschaften – bikram990

Antwort

6

Das können Sie in objective-c nicht tun. Die beste Option ist die Verwendung von Parametern als Referenz. Etwas wie das.

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

Und verwenden Sie es so.

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