在过去,您可能有这样的功能:
const char* find_response(const char* const id) const;
如果找不到该项目,则可以返回 null 以指示该事实,否则显然返回相关字符串。
但是当函数改为:
const std::string& find_response(const std::string& id) const;
您返回什么以表明未找到项目?
或者签名真的应该是:
bool find_response(const std::string& id, std::string& value) const;
什么是最优雅的现代 C++ 方式?