制作动态场景管理器?

时间:2012-01-05 03:23:45

标签: c++ scene

现在,我的场景管理器的工作方式是使用枚举和切换案例。

我有一个场景可以调用的方法叫做changeScene(MENU_SCENE)等等。

在场景管理器本身,我有一个开关案例说明,案例MENU_SCENE:返回新的MenuScene()。

这意味着每次添加新场景时,我都必须将其添加到开关盒中。

在没有开关盒的情况下,有没有一种方法可以做到这一点?理想情况下,我喜欢给定字符串的东西,返回一个BaseScene *,但我能想到它的方式仍然会涉及一个switch case(或嵌套ifs,因为不允许使用字符串)。

由于

1 个答案:

答案 0 :(得分:3)

好像你想要一个字符串是键的地图。该值取决于您的switch语句中的内容。它可以像下一个字符串一样简单,或者它可以是一个指向要调用的函数的指针,如果您需要为每个案例设置特殊代码。