gpt4 book ai didi

swift - "Argument passed to call that takes no arguments"创建对象时

转载 作者:搜寻专家 更新时间:2023-11-01 06:11:38 24 4
gpt4 key购买 nike

我在使用 Swift 类时出错。当我尝试像这样创建一个新对象时

let prod_obj = Produs(nume: nume_prod, cod_bare: cod_ext)

我收到错误“传递给不带参数的调用的参数”,我不知道为什么。我读过一些文档,这与他们的做法完全相同。这是我的类(class)的样子:

class Produs {
var nume: String!
var cod_bare: String!
}

我在想我可能需要添加一个初始化程序,但我不明白为什么在我的情况下有必要这样做。

最佳答案

您可以像这样使用结构体获取合成的 init

struct Produs {
let nume: String
let codBare: String
}
let prodObj = Produs(nume: numeProd, codBare: codBare)

对于一个类,您可以提供一个初始化程序:

class Produs {
var nume: String
var codBare: String

init (nume: String, codBare: String) {
self.nume = nume
self.codBare = codBare
}
}
let prodObj = Produs(nume: numeProd, codBare: codBare)

或者

class Produs {
var nume: String!
var codBare: String!
}

let prodObj = Produs()
prodObj.nume = numeProd
prodObj.codBare = codBare

注意:避免在变量名中使用下划线,使用驼峰命名,例如codBare

关于swift - "Argument passed to call that takes no arguments"创建对象时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55246117/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com