___ tag123swift ___ Swift ist eine universelle Open-Source-Programmiersprache, die von Apple Inc. für ihre Plattformen und Linux entwickelt wurde. Verwenden Sie das Tag nur für Fragen zu Sprachfunktionen oder für Code in Swift. Verwenden Sie die Tags [ios], [osx], [watch-os], [tvos], [cocoa-touch] und [cocoa] für (sprachunabhängige) Fragen zu den Plattformen oder Frameworks.
___ tag123nsobject ___ NSObject ist die Root-Klasse der meisten Objective-C-Klassenhierarchien. Es hat keine Superklasse. Von NSObject erben andere Klassen eine grundlegende Schnittstelle zum Laufzeitsystem für die Objective-C-Sprache, und ihre Instanzen erhalten ihre Fähigkeit, sich als Objekte zu verhalten.
___ qstntxt ___
Die Klasse %code% muss die Funktion %code% des Typs %code% überschreiben.
Das Aufrufen von %code% für ein Array von %code% -Objekten bewirkt jedoch nicht, dass ein Haltepunkt in der benutzerdefinierten Funktion %code% aufgerufen wird. Ist es möglich, dass eine andere %code% -Funktion diese benutzerdefinierte überschreibt?
Hinweis: Da FooBar eine Unterklasse von NSCoding und NSObject sein muss, listet FooBar Equatable nicht als Protokoll auf, weil dies den folgenden Fehler verursacht:
Redundante Übereinstimmung von 'FooBar' mit Protokoll 'Equatable'
%Vor%
___ tag123ncoding ___ NSCoding ist ein Protokoll des Apple Foundation-Frameworks. Das NSCoding-Protokoll deklariert die beiden Methoden, die eine Klasse implementieren muss, damit Instanzen dieser Klasse codiert und decodiert werden können.
___ tag123equatable ___ hilf uns dieses Wiki zu bearbeiten
___ answer37085980 ___
Sie erhalten diesen Fehler, weil NSObject bereits durch seine isEqual-Methode mit Equatable übereinstimmt.
Ich bin mir also nicht sicher, ob dies der richtige Weg ist, aber Sie könnten die isEqual-Methode von NSObject überschreiben:
%Vor%
___ answer37085883 ___
Da Ihre Klasse von %code% erbt, müssen Sie nicht das schnelle Protokoll %code% verwenden, sondern Sie müssen die %code% Methode %code% :
überschreiben
Swift 3.x
%Vor%
(Danke an Kamtschatka)
Swift 2.x
%Vor%
___ qstnhdr ___ Überschrieben == Funktion für Gleichheitstyp nicht für benutzerdefinierte Klasse aufgerufen, die Unterklassen NSCoding und NSObject [duplizieren]
___