这个返回的字符串其实包含了跟调用者约定的协议。要改,只能跟调用者一起改。
这个函数的问题主要是把真正的返回值跟错误信息编码在一起了。
用个tuple,或者写个专门包装返回信息的类
template<class T>
class ReturnInfo
{
public :
T value;
int ret_code;
string ret_message;
}
原来的函数返回ReturnInfo<string> ,这样就很清晰。
但是必然要改调用者的代码。
【 在 z16166 的大作中提到: 】
: 两个字:巨烂
: 1、把成功字符串和拼凑的错误原因字符串放在同一个返回值里;
: 2、有两三百处调用这个函数,到处都要改调用代码;
: ...................
--
FROM 223.72.62.*