"Variable muss initialisiert werden" -Fehler beim Delegieren an eine initialisierte Eigenschaft

9
%Vor%

erzeugt

%Vor%

Aber es ist! Und der Code sollte zu etwas wie

übersetzen %Vor%

was gut funktioniert.

Was ist der Grund für den Fehler und gibt es eine Problemumgehung? In der realen Code-Initialisierung ist nicht-trivial und Foo muss ein object sein (eigentlich ein Companion-Objekt), nicht ein class .

    
Alexey Romanov 20.11.2017, 12:18
quelle

1 Antwort

1

Ich spekuliere, dass die Verwendung der Klassendelegierung für ein Objekt ein bisschen nicht offensichtlich ist, also ist das wahrscheinlich die Essenz von warum .

Eine Problemumgehung besteht darin, direkt an eine Instanz von String zu delegieren. Dieser Code funktioniert für mich:

%Vor%

Beiseite: String in Kotlin hat keinen Konstruktor, der einen String-Parameter akzeptiert. Seltsam, das.

    
Paul Hicks 21.11.2017 02:48
quelle

Tags und Links