1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
#include <string> #include <unordered_map> class UserStore { public: explicit UserStore(std::string name) : name_(std::move(name)) {} std::string findById(int id) { return render(loadUser(id)); } private: std::string loadUser(int id) { return name_ + "#" + std::to_string(id); } std::string render(std::string user) { return "[" + user + "]"; } std::string name_; }; std::string render_user(UserStore& store, int id) { return store.findById(id); }