$StringStream$的瞎写……

(StringStream)真是个好东西(QwQ)

的帮助下,明白了这到底是个神马东西。

这玩意儿主要用来对付毒瘤输入。

举个栗子:

(UVA1222)

3 2
Aland 10
Boland 20 Aland
Coland 15
#

对,没错,你没看错,就是他,(Woc)这是什么毒瘤,(string)(int)

不过用可爱的(StringStream)就可以解决这样的问题。

#include<bits/stdc++.h>
using namespace std;
int main(){
	stringstream sp;
	string s;
	getline(cin,s);
	int T;
	double F;
	bool c;
	string a;
	sp<<s;
	sp>>T>>F>>c>>a;
	cout<<T<<' '<<F<<' '<<c<<' '<<a;
}

实际上,(StringStream)可以说和(cin)原理差不多,但他可以将任意类型与(string)相互转换。

像上面的例子:将完整的一行读入一个临时(string)之后可以用(StringStream)将他们分开

(StringStream)会自动处理,将相应的类型给对应的变量。

原文地址:https://www.cnblogs.com/wo-shi-zhen-de-cai/p/10995784.html