gpt4 book ai didi

ios - 带有常量和作用域的 Swift 可选绑定(bind)

转载 作者:搜寻专家 更新时间:2023-11-01 05:41:01 27 4
gpt4 key购买 nike

我试图理解为什么以下内容在 Swift 中有效。我假设它与 Swift 中事物的作用域方式有关。

let name = "test" //assigns "test" to name
var optionalName: String? = "John Appleseed"
var greeting = "Hello!"
if let name = optionalName { //assigns "John Appleseed" to name
let name = "no error" //assigns "no error" to name
greeting = "Hello, \(name)" //assigns "Hello, no error" to greeting
}
println(name) //prints "test"

我认为正在发生的事情是在不同的范围内创建 3 个独立的名称常量。第一个 let 名称在全局范围内。然后可选的绑定(bind) let name 是另一个范围,然后在 if let name 是另一个范围内。然后最终打印返回到全局范围。

最佳答案

你已经明白了:)它使用找到的第一个具有此类名称的变量,从内部范围开始向上。

关于ios - 带有常量和作用域的 Swift 可选绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30442946/

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