我有一个带有延迟块的简单代码块,但是playground没有执行延迟块。我究竟做错了什么?
以下内容被打印出来: “步骤1” “第3步” “第4步” “第5步”
import UIKit
print("Step 1")
do {
defer { print("Step 2") }
print("Step 3")
print("Step 4")
}
print("Step 5")
答案 0 :(得分:2)
我认为playground
中存在错误。
如果您尝试此代码
var d = 0
print("Step 1")
do {
defer {
d = 1
}
print("Step 3")
print("Step 4")
}
print(d)
print("Step 5")
您将看到值d
已更新为值1
,因此将调用该语句。
必须有错误,你的代码没问题。
答案 1 :(得分:2)
你确定你在看控制台吗?如果是这样,操场上一定有虫子。这是我从你的代码中得到的:
documentation