___ qstntxt ___

Ich mache die exercism.io-Programmierungsübungen und die Tests, die ich an meinem Code durchführen muss, haben das Ziel, sich miteinander zu vergleichen. Der Quellcode der Übung kann hier Ссылка

gefunden werden

Nach dem, was ich verstanden habe, ist bridgeToObjectiveC Äpfel interne Methoden, um Dinge zu tun und deshalb wurden sie entfernt. Mit ihnen bekomme ich %code% , was sehr verständlich ist, wenn sie es entfernt haben.

Ohne die Methode, die nur die Parameter im AssertEquals-Aufruf verwendet, bekomme ich %code% . Sind zwei Werte in Swift nicht vergleichbar? Wie würde ich tun, um sie vergleichbar zu machen?

    
___ answer26093322 ___

Sie können die Gleichheit der Wörterbücher überprüfen, solange die Werte %code% sind. Ändern Sie %code% so, dass eine generische Integritätsbedingung enthalten ist:

%Vor%     
___ tag123xcode ___ Xcode ist Apples integrierte Entwicklungsumgebung (IDE). NUTZUNGSHINWEIS: Verwenden Sie dieses Tag nur für Fragen zur Xcode-IDE selbst und nicht für allgemeine Mac- oder iOS-Programmierungsthemen. Verwenden Sie [Kakao] für Mac-Programmierfragen und [Kakaotouch] oder [ios] oder [Swift] für iOS-Programmierfragen. ___ 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. ___ tag123objectivec ___ Dieses Tag sollte nur bei Fragen verwendet werden, die sich auf Objective-C-Funktionen beziehen oder von Code in der Sprache abhängen. Die Tags [Kakao] und [Kakao-Touch] sollten verwendet werden, um nach Frameworks oder Klassen von Apple zu fragen. Verwenden Sie die verwandten Tags [ios], [macos], [apple-watch] und [tvos] für Probleme, die für diese Plattformen spezifisch sind. ___ tag123xctest ___ XCTest ist ein von Apple bereitgestelltes Framework, das Komponententestfunktionen implementiert. Es funktioniert mit iOS 7 und allen Versionen von OS X. ___ answer39664133 ___

Versuchen Sie

%Vor%

Erzwingt, dass der Compiler einfach abhebt und ruft die %code% -Methode für beide Methoden auf.

    
___ answer26092984 ___

Nein, Swift-Wörterbücher sind nicht direkt vergleichbar. Zum Testen von Einheiten können Sie entweder manuelle Vergleiche ihrer Größen und paarweiser Elementvergleiche durchführen, oder Sie können die einfache Sache machen und %code% s daraus erstellen und sie auf diese Weise vergleichen.

    
___

8

Ich mache die exercism.io-Programmierungsübungen und die Tests, die ich an meinem Code durchführen muss, haben das Ziel, sich miteinander zu vergleichen. Der Quellcode der Übung kann hier Ссылка

gefunden werden

Nach dem, was ich verstanden habe, ist bridgeToObjectiveC Äpfel interne Methoden, um Dinge zu tun und deshalb wurden sie entfernt. Mit ihnen bekomme ich '[S : T]' does not have a member named 'bridgeToObjectiveC' , was sehr verständlich ist, wenn sie es entfernt haben.

Ohne die Methode, die nur die Parameter im AssertEquals-Aufruf verwendet, bekomme ich '[S : T]' does not conform to protocol 'Equatable' . Sind zwei Werte in Swift nicht vergleichbar? Wie würde ich tun, um sie vergleichbar zu machen?

    
Johan 29.09.2014, 03:50
quelle

3 Antworten

7

Sie können die Gleichheit der Wörterbücher überprüfen, solange die Werte Equatable sind. Ändern Sie XCTAssertEqualDictionaries so, dass eine generische Integritätsbedingung enthalten ist:

%Vor%     
Nate Cook 29.09.2014, 05:55
quelle
2

Versuchen Sie

%Vor%

Erzwingt, dass der Compiler einfach abhebt und ruft die isEqual: -Methode für beide Methoden auf.

    
Robert 23.09.2016 15:12
quelle
1

Nein, Swift-Wörterbücher sind nicht direkt vergleichbar. Zum Testen von Einheiten können Sie entweder manuelle Vergleiche ihrer Größen und paarweiser Elementvergleiche durchführen, oder Sie können die einfache Sache machen und NSDictionary s daraus erstellen und sie auf diese Weise vergleichen.

    
NRitH 29.09.2014 05:19
quelle

Tags und Links