获取线();使用 C++ 时出错

getline(); error using C++

当我尝试 运行 以下程序时,我从 getline() 调用中收到以下错误。

留言是:

In function 'int main()':
error: no matching function for call to 'getline(std::ofstream&, std::string&)'

我不知道为什么会得到这个 - 我有 string 库。

我的代码:

#include <iostream>
#include <fstream>
#include <string>

using namespace std;

int main()
{
    int NumeroLetras;

    cout << "Juego de El Ahorcado\n--------------------\n" << endl;

    cout << "N3mero de letras de la palabra: ";
    cin >> NumeroLetras;

/*                Creamos el fichero con las palabras a adivinar
------------------------------------------------------------------------*/
    cout << "Creando fichero con palabras..." << endl;
    ofstream fichero("palabras.txt");
    fichero << "baloncesto\n";
    fichero << "beisbol\n";
    fichero << "futbol\n";
    fichero << "golf\n";
    fichero << "rugby\n";
    fichero << "tenis\n";
    fichero << "boxeo\n";
    fichero << "sumo\n";
    fichero << "judo\n";
    fichero << "nascar\n";
    fichero << "atletismo\n";
    fichero << "caminata\n";
    fichero << "ciclismo\n";
    fichero << "esgrima\n";
    fichero << "natacion\n";
    fichero << "polo\n";
    fichero << "clavados\n";
    fichero << "remo\n";
    fichero << "vela\n";
    fichero << "ajedrez\n";
    fichero.close();
    cout << "Fichero creado exitosamente..." << endl;

/*                Determinamos el tamaño de las palabras
------------------------------------------------------------------------*/
    string Palabra;

    fichero.open("palabras.txt");

    while (! fichero.eof())
    {
        getline(fichero, Palabra);

        cout << Palabra << endl;
    }

    return 0;
}

为什么会出现该错误?

您正在尝试读取 ofstream输出 文件流)

创建一个新的 ifstream 变量并从中读取。