2016-10-19 9 views
1

У меня есть программа, которая сохраняет имя пользователя и прочитать имя пользователя функция этого продолжает давать эту ошибку:C++ «Не перегруженная функция не принимает 0 аргументы» ошибки

Severity Code Description Project File Line Suppression State Error C2661 'std::basic_ifstream>::open': no overloaded function takes 0 arguments 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; 
} 
+3

'открытой()' занимает по меньшей мере один аргумент (имя файла, как правило), вам не нужно 'открытой()' здесь, поскольку вы передали имя файла в конструктор. –

+0

Итак, вытащите команду open()? –

+0

Хорошо, да, это сработало благодаря тонне, которое я застрял на этом как 2 дня, и просто работал над другими частями, поэтому хорошо сделать это: D –

ответ

2
string name2; 
ifstream myfile("Userlog.txt"); // here you are calling open 
myfile.open(); // no version of ifstream. so open what??!!! 

выше линии можно перевести как:

ifstream myfile; 
myfile.open("Userlog.txt"); 
myfile >> name2; 
myfile.close(); 
+0

О, так мне нужно добавить ключевое слово ifstream? –

+0

Да нет объекта ifstream в файле 'fstream.h', как' cin' в 'istream'so, вы объявляете один самостоятельно – Raindrop7

+0

Ох ОК: D спасибо, я получил его сейчас –

Смежные вопросы