所以我正在做一个单板滑雪游戏。我有一个名为障碍的障碍课。现在我正在创建一个Biome类,这样我就可以随机生成一些(2D)地形。以下是Biome类的定义:
class Biome
{
private:
Obstacle * obstsInBiome;
public:
Biome(Obstacle obsts[], int amountOfObsts);
~Biome();
void draw(); // Draw the biome
};
然后这是构造函数
Biome::Biome(Obstacle obsts[], int amountOfObsts)
{
obstsInBiome = new Obstacle [amountOfObsts]; // Creating array to hold the possible obstacles in this biome
for (int x = 0; x < amountOfObsts; x++) // Filling the obstacle array with the obstacles passed in
{
obstsInBiome[x] = obsts[x];
}
}
当我尝试将内存分配给数组obstsInBiome = new Obstacle [amountOfObsts];
时,我收到错误:“没有用于调用Obstacle :: Obstacle()的匹配函数”
是否无法为对象动态分配内存?有人可以建议一种方法来存储每个生物群系中的可能对象吗?
感谢任何帮助,谢谢