jjzjj

playerWalk

全部标签

c++ - OOP 中的正确方法。游戏示例。 Player::walk 还是 Map::playerWalk?

假设有一场比赛。有一个map类和一个玩家类。map存储字段,字段存储玩家。这将是在OOP中做的正确方法。什么时候负责玩家行走的方法是Player::walk或Map::playerWalk?关于第一个例子(Player::walk),它似乎是正确的做法,在现实生活中也是如此——它的玩家走路,但是它必须通过map实例访问目标字段,检查它是否可以走到那里,从开始字段中删除它并在目标字段中添加它,我的印象是Player会“知道太多”。 最佳答案 最终这是一个设计问题,两者都可以很好地适应OOP范例。我倾向于将方法放在语义上最有意义的类上。