Diese Frage bezieht sich auf Kompatibilität mit iOS-Versionen.überprüfen, ob eine C-Stil-Funktion vom Typ 'MyMethodName()' existiert?
Ich weiß, wie man überprüft, ob eine Funktion existiert, wenn es eine typische Objective-C-Stil-Methode ist, die requestsToSelector verwendet. d Für ein Verfahren wie zum Beispiel:
- (void) someMethod:(NSInteger)someParameter;
können Sie verwenden:
if ([self respondsToSelector:@selector(someMethod:someParameter)]) {
//do something
}
Aber was ist im C-Stil-Funktionen? Wie kann ich prüfen, ob eine Funktion vorhanden ist, die wie folgt aussieht:
Vielen Dank!
Das ist nicht eine Methode ist, ist es eine Funktion. Mögliches Duplikat von [Wie man überprüft, ob die Funktion in C/C++ existiert] (http://stackoverflow.com/questions/8814705/how-to-check-if-the-function-exists-in-cc) Siehe auch: [Kann ich eine Funktion neu definieren oder überprüfen, ob sie existiert?] (Http://stackoverflow.com/questions/6916772/cani-i-re-define-a-function-or-check-if-it-exists) –
Sie kann 'if (CStyleMethodName! = NULL) {...}' um zu sehen, ob das Symbol definiert ist. Das möchten Sie tun, wenn Sie beispielsweise mit älteren iOS-Versionen kompatibel sein möchten. –
@FabianKreiser, der nur funktioniert, wenn eine schwache Verknüpfung unterstützt wird. –