template<class T>
void s2i(string &str,const T &num)
{
stringstream ss;
ss<<str;
ss>>num;
}
string s;
getline(cin,s);
istringstream iss(s);
string temp;
while(iss>>temp) 默认情况下输入操作符(>>)读取时会跳过空白字符,并按照空白字符进行分割
{
s2i(temp,data[index++]);
}
一.istringstream类简介
-
用于执行C++风格的串流的输入操作。
-
istringstream的构造函数原形如下:
istringstream::istringstream(string str); -
从string对象str中读取字符。
二.stringstream类简介
-
用于C++风格的字符串的输入输出
-
stringstream的构造函数原形如下:
stringstream::stringstream(string str); -
进行string与各种内置类型数据之间的转换。
三.继承关系
-
istringstream类是从istream和stringstreambase派生而来
-
stringstream则是从iostream类和stringstreambase派生而来。
他们的继承关系如下图所示: