gpt4 book ai didi

ios - Xcode 6 Beta 6 if 语句 : bool is not convertible to UInt8

转载 作者:行者123 更新时间:2023-11-28 07:16:42 25 4
gpt4 key购买 nike

我正在根据 Skip Wilson 在 youtube 上的第五个教程制作井字游戏。但是,我使用的是 beta 6,而他使用的是视频中较早的版本之一。尽管采取了与他相同的所有步骤,但我收到此代码的错误:

if (!plays[sender.tag] && !aiDeciding && !done != nil){
setImageForSpot(sender.tag, player:1)
}

它说:

bool is not convertible to UInt8.

错误指向代码第一行的“完成”。 done是一个变量,进入if时值为false。我做错了什么?

最佳答案

在 Objective-C 和 Swift 的早期版本中,您可以使用除 Bool 之外的其他类型,例如如果 int 为 0 则转换为 false,如果对象为 nil 则它也为 false。


使用类似的东西(语法正确):

struct Sender {// just to simulate the notation of sender.tag without using a UIView
var tag = 1
}
var plays: [Int : Int] = [1 : 2, 3 : 4] // example values
var aiDeciding: Bool = true
var done: Bool = false
var sender: Sender = Sender()

if plays[sender.tag] == nil && aiDeciding == false && done == false {
print("works") // will NOT be called in the situation with the example values
}

您可以使用 !done 而不是 done == false。但是既然你遇到了问题,我想我应该把它写出来。我也喜欢这样。

关于ios - Xcode 6 Beta 6 if 语句 : bool is not convertible to UInt8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25507697/

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