那么,我有一个关于 C++ 的问题。假设我有一个游戏敌人类。我希望能够(理论上)在我的游戏中拥有无限数量的敌人。所以我必须有每个类的多个实例,并且我需要能够分别访问它们。我是否必须有一个敌人对象数组,数组的空间量不受限制,并且我会使用 new 和 delete 运算符来创建和删除数组中的敌人?那么我需要一个变量来保存敌人的数量,对吧?
最佳答案
使用std::vector
。它会根据需要自动分配更多内存。
标准库中还有其他容器会在需要时自动分配内存,例如 std::list
、std::set
或 std:: map
。这些容器可能更适合特殊情况,但 std::vector
通常是最佳选择。这完全取决于实现细节。
你可以这样使用它:
#include <vector>
struct Enemy {
//...
}
std::vector<Enemy> v;
Enemy e1, e2;
v.push_back(e1);
v.push_back(e2);
std::cout << "First enemy in vector: " << v[0];
关于C++:有很多对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16178152/