0
我是編程新手,這是我的第二個項目。 我跟着教練的筆記寫這些使用ifstream打開文件,但總是有一個錯誤說 錯誤:沒有匹配函數調用'std :: basic_ifstream ::打開(std :: string &)'|無法在C++中使用ifstream打開文件
string filename,command; ifstream myfile;代碼
我是編程新手,這是我的第二個項目。 我跟着教練的筆記寫這些使用ifstream打開文件,但總是有一個錯誤說 錯誤:沒有匹配函數調用'std :: basic_ifstream ::打開(std :: string &)'|無法在C++中使用ifstream打開文件
string filename,command; ifstream myfile;代碼
的
cout << "Enter the file name: ";
cin >> filename;
myfile.open(filename);
while(myfile >> numloops)
{
while(numloops != 0)
{
一部分您使用的是C++編譯器03。
僅僅因爲C++ 11可以使用std::string
來爲std::fstream
構造函數或std::fstream::open()
提供文件名。
由於歷史原因,該標準的舊版本需要使用C風格的字符串。
您可以使用獲得一個std::string::c_str()
,所以:
myfile.open(filename.c_str());
理想的情況是,你會使用一個非古編譯器來代替。
您是否在代碼中添加了文件擴展名? – Auriga
完整的錯誤在那裏,並沒有那不是一個鏈接錯誤。它與文件擴展名也沒有任何關係。 –