Ich habe die Funktion map
in Swift verwendet, um eine Reihe von Subviews zu durchlaufen und sie aus einer Superview zu entfernen.
Beim Upgrade von Swift 1.x auf 2.0 gab Xcode eine Warnung aus, dass der Rückgabewert der Karte nicht verwendet wurde. Also habe ich es mit let x = ...
zugewiesen und ich habe eine weitere Warnung bekommen:
Also habe ich Xcode die Warnung für mich reparieren lassen und es hat mir folgendes gegeben:
_ = self.buttons.map { %code%.removeFromSuperview() }
Was bedeutet ein Unterstrich , wenn er nicht im Kontext eines Methodenparameters steht ? Was bedeutet das?
Bearbeiten:
Ich weiß, dass wenn ein Methodenparameter anonym ist, der Unterstrich seinen Platz einnimmt. Ich spreche von einem Unterstrich mitten in einer Methode. Es ist nicht Teil einer Nachricht.
Ein Unterstrich kennzeichnet die Tatsache, dass Sie eine Variable setzen müssen, aber Sie beabsichtigen nicht, die Variable in der Zukunft zu verwenden. Anstatt einen ausgeklügelten Namen zu geben, wird ein Unterstrich einfacher und weniger durcheinander sein, besonders in dem Fall, dass der Variablenname keine Rolle spielt. (Da Sie es nicht wieder verwenden.)
Ein Parameter, dessen lokaler Name ein Unterstrich ist, wird ignoriert. Der Aufrufer muss ein Argument liefern, hat jedoch keinen Namen innerhalb des Funktionskörpers und kann dort nicht angesprochen werden. Es ist im Grunde ein Parameter Platzhalter, den Sie für nichts im Körper verwenden werden.
Wenn ich mich nicht irre, wird dies von Objective-C übernommen. Wenn Sie Ihren Zeiger überhaupt nicht in der App "gebrauchen", erhalten Sie eine Warnung. In Swift 2 glaube ich, dass sie versucht haben, etwas Ähnliches zu implementieren.