如何从派生类修改父类的变量?
How to modify parent class' variables from a derived class?
我很确定我知道为什么这不起作用,但我如何使它工作?好的,所以我有一个父类,它有一堆虚函数和 1 个非虚函数
前任:
class Parent
{
private:
int variable;
public:
virtual void firstfunction();
virtual void secondfunction();
void nonvirtualfunction();
};
Parent::nonvirtualfunction()
{
variable = 5;
}
我有一个继承自父类的子类
class Child : public Parent
{
void firstfunction();
void secondfunction();
}
Child::secondfunction()
{
Parent::nonvirtualfunction();
}
当我在子类中调用非虚拟函数时,它不会更改父类中的值。如何做到这一点,以便我可以更改子类中的父类变量?
您的示例代码确实有效:http://ideone.com/zRvp93
示例中唯一的主要问题是 Child
的成员函数是私有的,Parent::nonvirtualfunction
和Child::secondfunction
缺少其返回类型。
相关文章:
- 从类继承时,继承的类是否会通过父类重新定义继承的变量
- 如何在C++子类中访问父类的私有变量
- 从模板化父类中的派生内部类访问受保护的成员变量
- 如何将一个变量用于父类和派生类
- 是否可以在不修改父类的情况下将成员变量初始化推迟到继承的类?
- 将子类实例保存在父类型变量中并通过父变量使用 Child 函数?
- 重写子类构造函数中的父类变量
- 编辑从父类继承的变量
- 父类中的构造函数不会将值分配给私有变量
- 如何在 getter 的父类中初始化变量的情况下访问子类中的变量
- 尝试为所有子类 B 编辑父类 A 类的静态变量
- 删除父类时,方法局部静态变量会发生什么情况
- 有没有更好的方法可以从子类访问父类的变量?
- C++:使用父类运算符函数更新子类对象的继承变量
- 引用子变量的父类
- 访问父类变量
- 子类无法访问父类的变量
- 在C++中,如何从父类变量的子类调用重载方法
- 带模板的继承(访问子类成员函数内父类的变量和对象)
- 如何在继承类中创建父类变量数组作为私有成员