我正在编写一个游戏并有一个名为 GameManager 的主类。我希望它尽可能抽象。在它里面,有其他类的对象,Player,ItemManager。想象一下,我在播放器中有一个函数可以检测玩家是否在某个区域(检查 x 和 y 值)。例如,如果玩家在该区域,我想生成一个项目 createItem()。我将如何促进类(class)之间的交流?
最佳答案
一种可能性是 observer pattern .在该模式中,有一个主题维护观察者列表。当对象的状态发生变化时,它会通知观察者,观察者可以自由地做出他们认为合适的 react 。在这种情况下,Player 是您的主题,而 GameManager 是观察者。当 Player 的位置发生变化时,它会通知 GameManager,GameManager 然后可以生成一个项目或采取一些其他操作。
关于c++ - 促进类(class)交流c++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10746321/