#pragma once struct Tag {}; template class Base { public: virtual void func() = 0; }; Base bar();