【发布时间】:2016-10-19 00:15:20
【问题描述】:
我有一个程序正在保存用户名,它的读取用户名功能一直报这个错误:
严重性代码描述项目文件行抑制状态 错误 C2661 'std::basic_ifstream>::open': 没有重载函数需要 0 个参数 ConsoleApplication3 c:\users\main\documents\visual studio 2015\projects\consoleapplication3\consoleapplication3\consoleapplication3.cpp 25
我对 C++ 很陌生,不明白这个错误是什么意思,但我的代码在这里。
string name2()
{
string name2;
ifstream myfile("Userlog.txt");
myfile.open();
myfile >> name2;
myfile.close();
return name2;
}
【问题讨论】:
-
open()至少有一个参数(通常是文件名),这里不需要open(),因为你已经将文件名传递给了构造函数。 -
所以取出open()命令?
-
好的,是的,非常感谢,我已经坚持了 2 天,只是在其他部分工作,所以很高兴完成这项工作:D
-
顺便说一句,如果用户名有空格,您需要使用
std::getline(myfile, name2);。 -
是的,我说 cout 中没有空格,但感谢您告诉我如何拥有它们@Ken Y-N