0

我已经到处搜索了,我认为这确实是基本问题,但是我检查了其他一些人的代码,他们使用相同的方法创建具有唯一 ID 的对象,这就是为什么我不明白为什么它对我不起作用。

所以这是类 Enemy:

class cEnemy{
public:
       //code that doesnt matter
};

所以我想做的基本上是创建 10 个敌人,每个敌人都有一个唯一的标识符(0...9),所以我要做的是:

for (int i = 0; i < 10; i++){
       Enemy[i] = new cEnemy;
}

现在它已经给了我一个错误:error C2065: 'Enemy' : undeclared identifier

但是,如果我写 Enemy[5] 而不是写 Enemy[i],它可以正常工作。我想我错过了一些东西。

为什么?我在其他应用程序中看到此代码完全相同,并且可以正常工作...

因此,正如我所说,我的目标是创建 10 个具有唯一 ID 的敌人,然后访问每个敌人,但正如您所见,我什至无法创建它们。

提前致谢。

PS:class和main在同一个cpp文件中

4

1 回答 1

1
std::array<cEnemy, 10> Enemy;
for(int i = 0; i<10; ++i) {
    Enemy[i] = new cEnemy;
}

您必须先创建一个数组,然后才能使用它。您遇到的错误与您尝试执行的错误相同:

arrInt[i] = someInt;

完成之前:

int arrInt[someCount];
于 2013-11-11T03:24:21.697 回答