Я пытаюсь, чтобы пользователь вводил путь к файлу файла, который должен быть прочитан моей программой. Однако, когда я пытаюсь скомпилировать код, это ошибки со следующей ошибкой: никакой подходящей функции для вызова «std :: basic_ifstream :: open (std :: string &)». Код работает правильно, без ошибок, когда я непосредственно вхожу в файл вместо использования getline или cin. Я не знаю, в чем проблема. Какие-либо предложения?Имя пути к файлу и ввод пользователя
int main()
{
ifstream input_file;
string file_name;
cout<< "Please input file path to PostFix arithmetic expressions file\n";
getline(cin, file_name);
input_file.open(file_name);
read_and_evaluate(input_file);
}
Вы можете упростить этот пример, используя 'string file_name =" foo "', и вы можете найти ответ, просмотрев документацию 'ifstream :: open' (например, google" ifstream "). – Beta
Ошибка означает, что она говорит. Нет перегрузки 'open', который совместим с аргументом' std :: string' (по крайней мере до C++ 11). – chris
Еще один намек: вы можете также искать функции-члены 'std :: string'. – Beta