我在大学作业中遇到以下问题,任务如下:
派生一个类MyThickHorizontalLine
from MyLine
。一项要求是派生类的构造函数MyThickHorizontalLine
本身不设置值,而是有义务调用基本构造函数。
目前在我的 cpp 文件中看起来像这样:
MyThickHorizontalLine::MyThickHorizontalLine(int a, int b, int c)
{
MyLine(a, b, c, b);
}
这是我的基本构造函数:
MyLine::MyLine(int x1, int y1, int x2, int y2)
{
set(x1, y1, x2, y2);
}
MyLine 的标头定义:
public:
MyLine(int = 0, int = 0, int = 0, int = 0);
当前的问题是,当我调试这个时,我进入了构造函数MyThickHorizontalLine
我的价值观a
b
c
例如1
2
3
它们被设置在那里,当我进一步前进并进入 Base 构造函数时,我的所有值都为零。
我可能在这里遗漏了有关继承的关键部分,但我无法集中注意力。