Использование родительского метода при переопределении этого метода в дочернем классе в C++
Пусть имеется 2-е структуры A и B (B унаследованна от A). В A имеется метод f, который переопределяется в B. При переопределении f внутри B хотелось бы использовать метод f, каким он был до переопределения. Как это можно сделать?
Функция f из B в коде, приведенном ниже, должна возвращать x * 2 т.е. 4.
struct A {
int x = 2;
int f() {
return x;
}
};
struct B : public A {
int f() {
return *f до переопределения*() * 2;
}
};
Ответы (1 шт):
Автор решения: timur
→ Ссылка
Для этого воспользуйтесь оператором :: (подробнее):
struct B : public A {
int f() {
return A::f() * 2;
}
};