如何将参数循环到具有相同名称的多个结构?

时间:2015-11-05 06:45:33

标签: c++ struct

我对编码和c ++相当陌生,正在开发基础迷宫游戏和制作 它在整个事情上更有效率。

我的问题基本上不是一遍又一遍地写同样的东西 以同样的方式定义多个结构我可以用int做一些东西 每个循环递增1,以某种方式获取结构名称的位置 或者这不可能吗?

如果您对我的不良解释感到困惑,这是我的代码。

for (int g = 1; g < 30; g++)
{
    if (    (x == wall(g).x && y == wall(g).y) 
            && (player.x + 1 == wall1.x && player.y == wall1.y))
    {
    }
}

以上是我提出的近似想法。

我已经在顶部声明了许多名为(wall1,wall2,wall3等)的结构 需要全都运行这个论点。

2 个答案:

答案 0 :(得分:1)

您可以使用 struct 数组,并使用索引在运行时访问所需的 struct 。 您也可以尝试使用 switch-case 。 这就是我要帮助你的全部。

答案 1 :(得分:0)

您可以从单个祖先继承所有结构并使用基指针。 或者,如果您需要知道确切的结构类型,则可以使用RTTI。 但是,当然,他们不能有相同的名字。