[英]statement after a method call gets executed before call ends swift
我正在嘗試調用另一個類中的方法,並在方法調用后使用該類的變量,該變量在方法中得到更新。 但是我得到了變量的 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 秒才能完全執行。 除了返回我需要的變量之外,還有其他方法嗎?
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 ,這就是你想要的變量。 在這種情況下,您可以使用計算變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.