Anrufe ein obj-C-Verfahren mit einem Parameter
-
03-07-2019 - |
Frage
Ich habe eine c-Style-Funktion ändern zu einer Objective-C-Methode. Als ein Verfahren, wie verwende ich es?
NSString* myfunc( int x )
is now:
- (NSString *)myFuncWithParam:(int)x
c code: myString = myfunc(x); // works
obj-c code: myString = myFuncWithParam(x); // fails to compile.
Von einem der Antworten: myString = [object myFuncWithParam: x];
In diesem Fall, was würde „Objekt“ sein?
Lösung
myString = [object myFuncWithParam:x];
Wo Objekt ist das Objekt, das die Methode Sie aufrufen hat. Wenn Sie es aus dem gleichen Objekt anrufen, werden Sie ‚Selbst‘ verwenden. Diese tutoria l können Sie lernen, Obj-C helfen.
Andere Tipps
Sie müssen die eckige Klammer "message" Syntax:
myString = [myObject myFuncWithParam: value];
Off topic / Greises Geschwafel:
Als ich einmal langweilig war, habe ich versucht, eine Obj-C-ähnliche Syntax für C ++ erstellen mit Überladen von Operatoren. Ich glaube, ich war in der Lage zu bekommen
myString = myObject[myFuncWithParam](value);
arbeiten.