My Thing 类派生自具有以下构造函数的 Entity 类
Entity::Entity(string sNames, double xcord, double ycord)
:m_sName(sNames), m_dX(xcord),m_dY(ycord){}
事物的构造函数是
Thing::Thing(string sName, double xcord, double ycord):
Entity(sName, xcord, ycord),
m_iHealth(100),m_Weapon(Weapon("Fists", false, 10.0, 5, 1.0, xcord, ycord)){}
问题是我的 Thing 构造函数出现错误“没有适当的默认构造函数可用”。我指定使用我的实体构造函数而不是默认值的问题是什么。为了让这个问题让我更加困惑,我有另一个派生自 Entity 的类,它可以工作
Weapon::Weapon(string sName, bool iMagical, double dRange, int iDamage,double
dRadius, double dSpawnX, double dSpawnY):
Entity(sName, dSpawnX, dSpawnY), m_bMagical(iMagical), m_dRange(dRange), m_iDamage(iDamage),
m_dRadius(dRadius)
{
}
这运行没有错误,但它似乎与我的 Thing 构造函数完全相同,具有更多变量。我确定我错过了一些小东西,但我已经被难住了一段时间。
你是对的,有一些剩余的代码没有被注释掉。成员变量减速中的错误出现在构造函数中似乎很奇怪,但无论如何感谢。总是让我得到简单的东西。