Alle Parameter, die an eine Swift-Funktion übergeben werden, sind Konstanten, d.h. man kann sie nicht ändern. Wenn Sie möchten, können Sie einen oder mehrere Parameter als inout
übergeben, was bedeutet, dass sie innerhalb der Funktion geändert werden können und diese Änderungen sich im ursprünglichen Wert außerhalb der Funktion widerspiegeln.
Wenn Sie zum Beispiel eine Zahl an Ort und Stelle verdoppeln möchten – d.h., d.h. den Wert direkt ändern, anstatt einen neuen Wert zurückzugeben – könnten Sie eine Funktion wie die folgende schreiben:
func doubleInPlace(number: inout Int) { number *= 2}
Um diese Funktion zu verwenden, müssen Sie zunächst eine variable Ganzzahl erstellen – Sie können keine konstanten Ganzzahlen mit inout
verwenden, da sie geändert werden könnten. Außerdem müssen Sie den Parameter mit einem kaufmännischen Und-Zeichen (&
) vor seinem Namen an doubleInPlace
übergeben, was eine ausdrückliche Bestätigung dafür ist, dass Sie wissen, dass er als inout
verwendet wird.
Im Code würden Sie Folgendes schreiben:
var myNum = 10 doubleInPlace(number: &myNum)
SPONSORED Das Erstellen und Verwalten einer In-App-Abonnement-Infrastruktur ist schwierig. Zum Glück gibt es einen besseren Weg. Mit RevenueCat können Sie Abonnements für Ihre App in wenigen Stunden implementieren, nicht in Monaten, so dass Sie sich wieder der Entwicklung Ihrer App widmen können.
Testen Sie es kostenlos
Sponsern Sie Hacking with Swift und erreichen Sie die größte Swift-Community der Welt!