#include <iostream>
using namespace std;
class Base
{
public:
void print() {
cout << "Printing from base" << endl;
}
void print(int num) {
cout << "Printing number from derived: " << num << endl;
}
};
class Derived : public Base
{
public:
using Base::print;
void print() {
cout << "Printing from base" << endl;
}
};
int main()
{
Derived x;
x.print();
x.Base::print(1);
//x.print(1); // Gives a compilation error
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNsYXNzIEJhc2UKewpwdWJsaWM6CiAgICB2b2lkIHByaW50KCkgewogICAgICAgIGNvdXQgPDwgIlByaW50aW5nIGZyb20gYmFzZSIgPDwgZW5kbDsKICAgIH0KCiAgICB2b2lkIHByaW50KGludCBudW0pIHsKICAgICAgICBjb3V0IDw8ICJQcmludGluZyBudW1iZXIgZnJvbSBkZXJpdmVkOiAiIDw8IG51bSA8PCBlbmRsOwogICAgfQp9OwoKY2xhc3MgRGVyaXZlZCA6IHB1YmxpYyBCYXNlCnsKCnB1YmxpYzoKICAgIHVzaW5nIEJhc2U6OnByaW50OwoKICAgIHZvaWQgcHJpbnQoKSB7CiAgICAgICAgY291dCA8PCAiUHJpbnRpbmcgZnJvbSBiYXNlIiA8PCBlbmRsOwogICAgfQp9OwoKCmludCBtYWluKCkKewogICAgRGVyaXZlZCB4OwoKICAgIHgucHJpbnQoKTsKICAgIHguQmFzZTo6cHJpbnQoMSk7CgogICAgLy94LnByaW50KDEpOyAvLyBHaXZlcyBhIGNvbXBpbGF0aW9uIGVycm9yCgogICAgcmV0dXJuIDA7Cn0K