如果我有一个基类:派生类构造函数调用
class Base{
...
};
和派生类
class Derived : public Base{
...
}
这是否派生类总是调用基类的默认构造函数?即不带参数的构造函数?例如,如果我定义的基类的构造函数:
Base(int newValue);
,但我不定义默认构造函数(无参数的构造函数):
Base();
(我承认这只是一个声明,而不是一个定义) 我得到一个错误,直到我定义了不带参数的默认构造函数。这是因为基类的默认构造函数是由派生类调用的构造函数吗?
您可以通过使基类中的默认构造函数打印某些对屏幕唯一的东西来进行检查。这是检查这样的事情的好方法,你可以学习东西! –