我SFML 2.3用来控制程序中的图形.我需要一个类才能访问窗口,即使该类不是最初创建窗口的类(没有所有权)也可以绘制它.例如,Battle班级需要能够绘制战斗场景并操纵角色,但是World班级需要前后窗口Battle来显示玩家在主游戏中的移动.
如何处理窗口对象?我最初的想法是拥有一个GameMaster将窗口作为静态成员的类.但是,考虑到通常的共识是什么,我认为最好不要错误地使用这种方法.
我意识到我总是可以将窗口的引用传递给需要它的每个类,但这会使所有需要操作窗口的类的构造函数变得非常膨胀.