【发布时间】:2019-06-30 21:28:13
【问题描述】:
我正在尝试创建一个可编码类的新实例,但我不知道如何:
var x = Articles();
给我以下错误:
调用中的参数“from”缺少参数
class Articles: Codable {
let value: [Article]?
}
我不明白,因为这是一个无参数类。我不知道 from 参数是什么意思。
【问题讨论】:
-
查看
Decodable中的init(from:)方法。 -
我在没有参数的情况下添加了自己的初始化程序,但它没有解决它。我有点想:class Articles: Codable { init() { value = nil; } 让值:[文章]? }
-
终于让它工作了。让我失望的是对参数的需求。其他编程语言具有不同的行为,即使子类具有构造函数,也必须显式定义构造函数。它在 Swift 中的工作方式完全不同。我什至不能创建一个只设置一些 Codable 属性(必须是全部)的构造函数。这也与其他编程语言(如 JAVA 或 C#)的操作方式有很大不同。
标签: swift