ich gelesen, dassInit in Swift Sprache
init
in Swift nicht Wert zurück, dann, warum ich dieses schreiben kann:
var str = String.init("mystring")
ich gelesen, dassInit in Swift Sprache
init
in Swift nicht Wert zurück, dann, warum ich dieses schreiben kann:
var str = String.init("mystring")
Die init-Funktion nicht return Sie haben Recht, aber in diesem Fall machen Sie nur eine Variable gleich der Struktur String, die mit "Hallo"
initialisiert wirdEs ist dasselbe wie:
var class = someClass()
Das() ist eine Funktion init ohne Argumente.
danke, können Sie bitte ein anderes Beispiel der Verwendung von init geben, wenn es keinen Wert zurückgibt? – tproger
So oft man sieht() auf etwas, das keine Funktion ist, ist es ein Init-Aufruf. So zum Beispiel AVAudioPlayer() oder gar [String]() –
In diesen Fällen müssen Sie die initialisierte Instanz einer Variablen zuweisen oder sie hat keine Speicherstelle im Speicher. Die Variable IS ist die Instanz der Klasse oder des Objekts usw. Der Init-Aufruf hat nichts zurückgegeben. –
Streng gesprochen * gibt keinen Wert zurück * ist falsch. Die "init" -Funktion gibt die Instanz zurück, aber Sie müssen 'self' nicht explizit wie in Objective-C zurückgeben – vadian
danke für die Antwort) – tproger