lazy var
の宣言に文字列リテラルが表示されるたびに、Swift 2/XCode 7でコンパイルエラーが発生します。Cannot convert value of type String to expected argument type '(_builtinStringLiteral: RawPointer, byteSize: Word, isASCII: Int1)' ...
Swift 2/XCode 7の遅延文字列内の文字列リテラル[型文字列の値を変換できません]
(私はスウィフト1.2/XCodeの6で問題はなかった)
このエラーを生成し、最も単純な行はこのようなものになります。
lazy var foo = "bar"
しかし、もっと意義が(うるさく)を、それも初期化子で発生文字列引数をとる:
lazy var viewsLabel = HWLabel(color: COLOR_WHITE, font: ProximaNova("Semibold", 13))
lazy var durationIconView = HWIconView(imageName: "TimeIcon", color: COLOR_WHITE)
これらは明らかに私自身の初期化子ある、と私は、AppleのSDKには非常に多くの場合、初期化子に引数として文字列を持っていないように見えます気づい。 init
の悪い習慣の文字列はありますか?仕事は、ブロック内の宣言をラップしている何
。
私は今のためにそれを行うか、単にそれらないlazy
になるかもしれません。
でも、私はまだ興味があります。これはXcode 7のバグですか?
UPDATE:
ただ何がはクロージャ内の宣言を仕事を包むない、むしろそれは推論されないように、VARの種類を指定しないことに気づきました。
ので、動作しません何:型推論とlazy var
宣言台無しにある文字列の出現は私を超えているのはなぜ
lazy var viewsLabel: HWLabel = HWLabel(color: COLOR_WHITE, font: ProximaNova("Semibold", 13))
lazy var durationIconView: HWIconView = HWIconView(imageName: "TimeIcon", color: COLOR_WHITE)
を。それでもXcode 7のバグかもしれません。
を'怠惰のvar FOO:文字列= "バー"'。 –
Ha、ありがとう@MartinR!ちょうどそのことに気づき、私の質問を更新しました。 –
は私にはバグのように見えます。 –