Unfortunately, this does not quite do what you want.
A using
directive is just about bringing some names into the scope it is used. virtual
methods need be overriden, and just bringing names is not considered overriding.
The truth of the matter is that C++ does not support delegation directly. There is just this slight twist of bringing names into scope explicitly.