Swift 我是否能够向可编码一致性对象添加成员初始值设定项?

Swift 我是否能够向可编码一致性对象添加成员初始值设定项?,swift,codable,Swift,Codable,我目前有一个符合Codable的类,并且有一个类似这样的初始值设定项 public class A: Codable { var aString: String? public init(input: String?) { self.aString = input } } 当我试图创建它的实例时,我得到一个错误 let myA = A(input: "Goodbye world") 调用中的参数标签不正确(具有“输入:”,应为“发件人:”) 我是否仅限

我目前有一个符合Codable的类,并且有一个类似这样的初始值设定项

public class A: Codable {
    var aString: String?
    public init(input: String?) {
        self.aString = input
    }
}
当我试图创建它的实例时,我得到一个错误

let myA = A(input: "Goodbye world")
调用中的参数标签不正确(具有“输入:”,应为“发件人:”)


我是否仅限于可编码类的
init(来自decoder:decoder)抛出
初始值设定项?

您的代码是正确的,请仔细检查您是否实际拥有公共初始值设定项而不是私有初始值设定项

我把它放在我的Xcode游乐场上,一切正常:

public class A: Codable {
    var aString: String?
    public init(input: String?) {
        self.aString = input
    }
}

let a = A(input: "123")

我无法重现错误并回答您的问题,是的,您可以拥有自己的自定义init方法Hanks,我忘记了操场-我可以在询问之前轻松地在那里进行测试。教一个人钓鱼,一切:)我的公开课和起首字母都在一个豆荚里;删除我的派生数据成功了