我正在尝试编译涉及继承的代码。
ValueError: math domain error
父类是MapEntityClass,它没有默认构造函数,但有一个值构造函数。当我编译时,我收到以下错误:
#include "MapEntityClass.h"
class RectangularEntityClass:public MapEntityClass
{
public:
void drawOnMap(MapClass *mapObj) const;
protected:
};
知道出了什么问题吗?
答案 0 :(得分:1)
在继承中,只有当父类没有构造函数或只有默认构造函数时,子类才需要有构造函数。
在任何情况下,如果父类碰巧有参数化构造函数,子类应该有一个参数化构造函数,它应该调用父类构造函数。
示例:
function toggleProjectileDired() {
if (derivedModeP == 'dired-mode') {
// We're in dired buffer
evilDeleteBuffer();
} else {
projectileDired();
}
}
evilLeaderSetKey("tt", toggleProjectileDired);