#ifndef _USER_H #define _USER_H #include #include #include #include class user { public: virtual ~user() {} // virtual std::string home_directory() = 0; }; typedef std::shared_ptr user_p; class directory { public: virtual ~directory() {} virtual const user_p find_user (const std::string &user_name) = 0; }; typedef std::shared_ptr directory_p; #endif