利用C++的stringstream对各种数据类型转换
C++的
用输入操作来改变数据类型
istringstream stream;
string result=”123456”;
int n=0;
stream << result; //从字符串输入
stream >> n; //输出到int
n 就等于123456了
可以使用一个模板使其更加调用通用化
template
DataType CExp(const char *lpsz)
{
DataType ret;
assert(lpsz != NULL);
const std::string str(lpsz);
std::istringstream istr(str);
istr >> ret;
return ret;
}
而用输出操作可将各种类型转换为string
以下是实现模板
template
string CStr(const DataType& data)
{
std::ostringstream ostr;
ostr << data;
return ostr.str();
}
使用实例:
int i = 0;
i = CExp
cout << "i == " << i << endl;
string strConv;
strConv = CStr(1234);