GKTurnBasedParticipant
有一个属性:player
,具有类GKPlayer
。声明写为:
var player: GKPlayer { get }
但是API文档说,
如果比赛中的该广告位具有 尚未被实际玩家填补。
所以如果可以是nil
,为什么不声明:
var player: GKPlayer?
我在这里不明白什么?吸气剂有问题吗?这实际上很重要,因为在其他玩家尚未加入的自动配对游戏中,玩家应该nil
。
当我进行条件解包时(迁移到Swift 4.2之后)
if let onlineGKPlayer = participant.player {
这现在是编译器错误:
用于条件绑定的初始化程序必须具有可选类型,而不是'GKPlayer'
https://developer.apple.com/documentation/gamekit/gkturnbasedparticipant/1521037-player