这是《c++primer》中的一个例子,用于将不同类型的对象统一输出,再分离出来。
int val1 = 512, val2 = 1024;
ostringstream format_message;format_message << "val1: "<<val1<<"\n"<<"val2: "<<val2<<"\n";//必须有空格
//string s = format_message.str();
//cout<<s;
int a,b;
istringstream input_istring(format_message.str());
string dump1,dump2;
input_istring >> dump1 >>a >>dump2 >> b;
cout<<dump1<<a<<" "<<dump2<<b;
可是搞了半天也没有做到,最后才发现原来是定义的字符串与整形间少了空格,而流的格式化输出靠的就是空格区分不同类型的对象。