我正在为此测验问题苦苦挣扎,因为该代码无法编译。有人可以帮助我解决这个Swift测验问题吗?
struct Dog {
let name: String
let owner: String?
}
let stray = "No known owner"
func createDog(dict: [String:String]) -> Dog? {
guard let name = dict["name"] else { return nil }
let owner = dict["owner"]
return Dog(name: name, owner: owner)
}
let myDog = createDog(["name":"Indi"])
以下哪项最能描述myDog?
A)。 myDog将被创建,但其值为nil。
B)。 myDog将具有“名称”,“ Indi”和“所有者”为零。
C)。 myDog将具有“名称”,“ Indi”和“所有者”,“ Stray”。
D)。 myDog将永远不会创建,因为代码将崩溃。
因为此代码在我的X代码中引发了很多错误,所以我选择了D,但担心我的答案是错误的,请另请谅解。谢谢
抓取我的X代码中编译的确切代码的屏幕截图
您在通话中缺少参数标签'dict:'。如果通过了那么你并没有通过dic的所有者,那时它将为零。选择选项B