【Swift 4.0】’XXXX’ cannot be constructed because it has no accessible initializers

こちらのエラーが出ました。

‘XXXX’ cannot be constructed because it has no accessible initializers

ちなみに、こちらも同時に出ていました。

Class ‘XXXX’ has no initializers

原因と解決方法

クラスのメンバ変数に、初期値を代入せず宣言している変数(定数)が存在するためでした。


// var variable: Int  => エラーが出る

var variable: Int = 0  // => 解決
var variable: Int!  // => 解決

のように初期値を代入するか、「!」をつけるかすればエラーは解消されました。

コメント