gpt4 book ai didi

swift - 在初始化程序中使用函数 - Swift?

转载 作者:搜寻专家 更新时间:2023-10-31 22:32:51 24 4
gpt4 key购买 nike

假设如下:

class A {
let x : Int
init() {
self.x = assign(1)
}
func assign(y : Int) -> Int {
return y
}
}

这会产生错误。

这是我的问题:有没有办法在类初始值设定项中调用函数?

编辑:添加错误信息:

use of 'self' in method call 'assign' before all stored properties are initialized

最佳答案

在实例初始化之前(init 完成之前)您不能调用实例方法,但您可以使用模块级函数和 type methods使用 classstatic 关键字定义。

func compute(y: Int) -> Int {
return y
}

class A {
let x: Int

static func assign(y: Int) -> Int {
return y
}

init () {
x = A.assign(3) + compute(4)
}
}

关于swift - 在初始化程序中使用函数 - Swift?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36220445/

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