我是否可以向符合Codable的对象添加成员初始化程序?

问题描述 投票:0回答:1

我目前有一个符合Codable的类,并且具有类似这样的初始化程序

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

[当我尝试创建它的实例时,出现错误

let myA = A(input: "Goodbye world")

调用中不正确的参数标签(具有“输入:”,预期为“来自:”)

我可编码类仅限于init(from decoder: Decoder) throws初始化程序吗?

swift codable
1个回答
0
投票

您的代码正确,请仔细检查您是否实际上有一个公共初始化程序而不是一个私有初始化程序。

我把它放到我的Xcode Playground中,一切按预期进行:]

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

let a = A(input: "123")
© www.soinside.com 2019 - 2024. All rights reserved.