Fehler: Unveränderlicher Wert, der übergeben wurde, reduziert die Funktion

8

Ich versuche, den folgenden Code auszuführen, der ein Array von Tupeln in ein Wörterbuch umwandelt, aber ich erhalte einen Kompilierfehler, der besagt:

  

Unveränderlicher Wert vom Typ '[String: String]' hat nur mutierende Member mit dem Namen 'updateValue'

%Vor%

Warum wird initial als var deklariert? Hat es mit @noescape auf der reduce -Signatur zu tun?

%Vor%     
Raphael Oliveira 10.06.2015, 15:00
quelle

3 Antworten

8

Sie können den Parameter dictionary einfach ändern, indem Sie ihn mit var :

voranstellen %Vor%

Beachten Sie jedoch, dass bei Verwendung von reduce bei jeder Iteration ein neues Wörterbuch erstellt wird, wodurch der Algorithmus sehr ineffizient wird. Vielleicht möchten Sie eine traditionelle foreach -Schleife

verwenden     
Antonio 10.06.2015, 15:07
quelle
4

Auf Swift 3:

%Vor%     
Igor 19.10.2016 14:30
quelle
4

Swift 4 hat eine neue Variante:

%Vor%

Was könnte ausgedrückt werden:

%Vor%     
mxcl 16.11.2017 15:39
quelle

Tags und Links