#include <iostream>
using std::cout;
using std::endl;
class Base {
public:
void Func(int) { cout << "Base::Func Implementation" << endl; }
};
class Derived : public Base {
public:
// Bring Base::Func into derived class.
using Base::Func;
// Hides the Base::Func with same defined in base class.
void Func() { cout << "Derived::Func Implementation" << endl; }
};
int main()
{
Derived D;
D.Func(5);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBzdGQ6OmNvdXQ7CnVzaW5nIHN0ZDo6ZW5kbDsKCmNsYXNzIEJhc2UgewoKcHVibGljOgoJdm9pZCBGdW5jKGludCkgeyBjb3V0IDw8ICJCYXNlOjpGdW5jIEltcGxlbWVudGF0aW9uIiA8PCBlbmRsOyB9Cn07CgpjbGFzcyBEZXJpdmVkIDogcHVibGljIEJhc2UgewoKcHVibGljOgoJLy8gQnJpbmcgQmFzZTo6RnVuYyBpbnRvIGRlcml2ZWQgY2xhc3MuCgl1c2luZyBCYXNlOjpGdW5jOwoKCS8vIEhpZGVzIHRoZSBCYXNlOjpGdW5jIHdpdGggc2FtZSBkZWZpbmVkIGluIGJhc2UgY2xhc3MuCgl2b2lkIEZ1bmMoKSB7IGNvdXQgPDwgIkRlcml2ZWQ6OkZ1bmMgSW1wbGVtZW50YXRpb24iIDw8IGVuZGw7IH0KfTsKCmludCBtYWluKCkKewoJRGVyaXZlZCBEOwoJRC5GdW5jKDUpOwp9