#pragma once #include namespace dchat { class User { public: virtual ~User(){} virtual const std::string& getName() const = 0; }; class OfflineUser : public User { public: OfflineUser(const std::string &name); virtual const std::string& getName() const override; std::string name; }; }