別のクラスを継承し、基本クラスの関数の値を返す必要があるクラスを作成しています...紛らわしいので、コード自体に話させます...
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() { ... }
ただし、ここでは値を返しません。
ご回答ありがとうございます。