我正在尝试调用另一个类中的方法,并使用该类的变量,该变量在方法调用后将在该方法中更新。但是由于在方法完全执行之前调用了该语句,因此我得到了一个变量的nil值。
例如:我有两个类A和B。B有一个方法更新和一个变量更新。
class A {
let obj_b = B()
func call() {
obj_b.update()
let updated = obj_b.updated
}
}
class B {
var updated: Int?
func updated() {
updated = 1
}
}
我要尝试的内容比示例复杂得多,该方法大约需要5秒钟才能完全执行。除了返回我需要的变量之外,还有其他方法吗?
答案 0 :(得分:0)
class A {
let obj_b = B()
func call() {
let updated = obj_b.updatedVariable
print("\(updated!)")
}
}
class B {
var updatedVariable: Int?{
return 1
}
}
呼叫A
let obj_b = A()
obj_b.call()
结果打印1,这就是您想要的变量。在这种情况下,您可以使用计算变量。