#include <iostream>
#include <string>
using namespace std;

struct A {
    int f() { return 42; }
};

struct B : A {
    using A::f; // <- This is the magic line!
    int f(int n) { return 42 + n; }
};

int main() {
	B b;
	cout << b.f() << endl;
	cout << b.f(100) << endl;
	return 0;
}