Was bedeutet das nicht verfügbare Attribut in Objective C?

8

Was macht das nicht verfügbare Attribut in Objective C?

%Vor%

Gibt es eine Online-Referenz zu diesem und anderen Attributen in Clang?

    
cfischer 23.06.2013, 15:19
quelle

2 Antworten

12

Das Attribut unavailable markiert eine Funktionsdeklaration, sodass Sie eine Fehlermeldung generieren können, wenn jemand versucht, sie zu verwenden. Es entspricht im Wesentlichen dem deprecated -Attribut, außer dass der Versuch, eine deprecated -Funktion zu verwenden, nur eine Warnung verursacht, aber die Verwendung von unavailable one verursacht einen Fehler. Dokumentation unter: Ссылка

Hier ist ein einfaches Anwendungsbeispiel. Zuerst der Code:

%Vor%

Und dann baut es:

%Vor%     
Carl Norum 23.06.2013, 15:25
quelle
2

Ohne auf die Vor- und Nachteile von Singleton-Objekten einzugehen, ist das Attribut ((nicht verfügbar ("message")) praktisch, um zu verhindern, dass Singletons außerhalb des Standards "sharedInstance" instanziiert werden. Methode.
Zum Beispiel verhindern die folgenden Zeilen in der Header-Datei Ihres Singleton-Manager-Objekts die Verwendung von alloc, init, new oder copy.

%Vor%

Um Ihr Singleton instanziieren zu können, müssen Sie Ihre eigene benutzerdefinierte Initialisierungsroutine ausführen. Etwas in der Art von:

%Vor%     
Tuique 13.08.2015 19:56
quelle