gpt4 book ai didi

swift - 如何判断哪个block guard退出了?

转载 作者:行者123 更新时间:2023-11-28 06:33:48 26 4
gpt4 key购买 nike

guard 未能满足条件时,它们会退出闭包。但是,让我感到困惑的是什么被认为是 guard 退出的障碍?

例如,如果我有以下内容:

func doThing() {
while ... {
for ... {
if ... {
guard ... else { return }
}
}
}
}

guard 是只退出 ifforwhile 还是整个 func?

实际规则是什么,因为我已经阅读了在定义 guard 退出的内容时可互换使用的 blockclosure 术语,但是每个术语都有不同的含义。

最佳答案

return 语句用于从最近的闭包(在您的情况下为函数)退出并返回结果值(默认情况下为 Void),无论您的循环有多深或 if 条件。可能您混淆了 returnbreak

但是,您也可以在 else 子句中使用 breakcontinuethrow 语句守卫声明。例如,如果您使用 break 语句,您将结束最近循环或 switch 语句的执行,或者,如果您 mark cycle/if/switch by label并使用 break 后跟该标签,您将退出标记的语句。

关于swift - 如何判断哪个block guard退出了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39562762/

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