【发布时间】:2014-11-11 03:43:34
【问题描述】:
vector<double> grades;
vector<double>::iterator it;
在类中定义。
Grades::Grades(string str){
istringstream obj(str);
string y;
while(obj>>y)
double num;
stringstream convert(y);
if(!(convert>>num))
num=0.0;
grades.push_back(num);
}
}
Grades 是一个包含双精度向量的类。目标是首先用“”分割字符串,然后解析每个分解的片段以键入双精度。这是正确的方法吗?还有其他更简单的方法吗?
【问题讨论】:
-
不,我不明白循环的必要性。不应该是
while (obj >> y)吗? -
@remyabel 是的,我从文件中复制了错误的代码。我现在要编辑。
-
好吧,不要将你的代码编辑成不是你真正代码的东西。
-
为什么需要字符串?只需
while(obj >> num)。 -
@user657267 我必须先拆分字符串“str”。然后对于每个元素拆分,我必须将其转换为双精度,最后将其添加到向量中。还是我错过了什么?