基本上,它会将任何具有operator <<的输出对象定义为流,并将其转换为字符串.(可选)如果您传递bool变量的地址,它将根据转换是否成功来设置.
这个函数的优点是,一旦定义了,只要你为你编写的新类定义了operator <<,你也可以立即得到一个toString()方法.
template<class T>
string toString(const T& t, bool *ok = NULL)
{
ostringstream stream; // line A
stream << t; // line B
if(ok != NULL)
*ok = (stream.fail() == false); // line C
return stream.str(); // Line D
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4989 次 |
| 最近记录: |