#pragma once class Object { private: const char * name = nullptr; const char * description = nullptr; protected: Object() = default; virtual ~Object(); friend class ObjectFactory; };