我一直在努力弄清楚如何一起使用getline和stringstream来解析文件。如果有人能帮忙解释我会非常感激。非常。
我真的想要构建函数ReadFile,这是一个读取文件名的函数,包括" name,salary" 50个名称和工资的格式文本。我想将它分成名为:names [] salary []。
的数组我到目前为止的内容如下所示,我认为根据提示我的类结构是否正常,但有人可以帮助我正确地将文件读入单独的数组吗?谢谢!
APPLY_FILTER()
答案 0 :(得分:1)
此代码不应编译。将来请确保您的代码示例无需修改即可编译,并包含所有#includes。
关于ReadFile
功能的一些事项:
names
和salaries
。你可能不想要那个。index ++
应为index++;
。ifstream::open
采用C字符串,因此您需要传入filename.c_str()
。getline
没问题,但您的第二个尝试将字符串直接复制到浮点数中。您需要明确地进行类型转换。一种方法是创建一个临时字符串变量,将其传递给getline
,然后使用std::stof
将该字符串转换为浮点数。这需要C ++ 11。如果您无法使用C ++ 11,则可以使用strtof
中的<cstdilib>
。ss >> ...
的目的是什么,但您可能不想要它。如果您想打印结果,则需要cout << names[index] << ": " << salaries[index] << "\n";
关于Players()
构造函数的一些事情:
{}
。大多数问题可能是通过查看编译器错误然后查找相应的C ++文档来捕获的。也就是说,我知道C ++并不是最容易入门的语言,它有助于尽早获得指针。保持它,你会得到它!