我正在制作一个继承自另一个类的类,并且必须在基类中返回一个函数的值...这很令人困惑,因此我将让代码自行说明...
class ParentClass {
public:
virtual bool getMyVal();
};
bool ParentClass::getMyVal() {
return true; // in my program there is a bit more to it
}
class ChildClass : public ParentClass {
public:
bool getMyVal();
};
bool ChildClass::getMyVal() {
CalculateMassOfSun();
return parent::getMyVal(); // Please make sure you read below...
}
因此,这只是我想做的一个示例,而不是实际的代码。如您所见,在ChildClass::getMyVal()中,基本上需要进行一些预计算,然后在父类中运行相同的函数并返回其值。我知道它是父级中的虚函数,而且我还没有以正确的方式调用父级中的函数-这是在PHP中完成的方式,而且我认为这是对我有意义的唯一方法并希望此刻其他人。
那我该怎么做呢?此刻,我发现了一些类似的东西:
bool ChildClass::getMyVal() : /*ParentClass::*/getMyVal() { ... }
但是,它不会在此处返回值。
预先感谢您的回复。
最佳答案
要调用getMyVal
的基本定义,只需在调用之前添加基本类型名称
return ParentClass::getMyVal();
关于c++ - 基类中虚函数的C++面向对象返回值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10604934/