我正在尝试通过注册表单创建一个新玩家(registerNewPlayer
)。我遇到的问题是,一旦创建了玩家对象,我就无法访问玩家信息来更改玩家名称或玩家的金牌等变量。如何在没有标识符的情况下访问类中的对象,或者如何创建函数创建具有标识符的新播放器?
class Players {
var name: String
var gold: Int
var accountPassword: String
init (name:String, gold: Int, accountPassword: String) {
self.name = name; self.gold = gold; self.accountPassword = accountPassword
}
}
func registerNewPlayer (playerName: String, password: String) -> Players {
let registree = Players(name: playerName, gold: 0, accountPassword: password)
return registree
}
registerNewPlayer(playerName: "Bob", password: "abc")
答案 0 :(得分:1)
修复方法是将返回的对象放入Players类的init {}语句中的一个玩家数组中。这允许玩家通过阵列的索引号来识别。
答案 1 :(得分:0)
您需要将新播放器分配给变量,以便以后可以访问它。
var playerOne = registerNewPlayer(playerName: "Bob", password: "abc")
print(playerOne.name) // Prints "Bob"