假设我有一个来自软件包的类,所以我没有办法改变设计,具有以下形式:
class A
{
public:
A(int degree)
{
...
initialize_points();
...
}
...
private:
...
void initialize_points()
{
int number = 1;
// proceed to do computations using the number specified above
...
}
...
}
除了函数B
中指定的A
之外,我需要的是让number
类与类initialize_points()
类似。说,我希望它是34而不是1.
由于缺乏经验,我不太明白如何推导出这样的课程B
(我应该这样做,也许最好把它写成一个模仿实施的新课程A
?)来自类A
以来的函数,我想要覆盖的行为是基类的private
成员。
谢谢
答案 0 :(得分:1)
简短的回答是,这不能用C ++完成。派生类可以覆盖其基类所做的主要机制是虚函数。除非基类定义虚函数,否则在派生类中无法覆盖它。