Проблема в работе с потоками

Вопрос заключается в следующем, когда я делаю cout<<"Введите фамилию.." то прописываю cin.ignore, т.к. при вызове следующего cout в консоли выводит 2 эти строки вместе

Например: Введите фамилию отправителя: Введите имя отправителя:

cin.ignore решил эту проблему, но когда я хочу работать с файлом и ввести в него текст, fout.ignore не срабатывает и получается что 2 строки опять выводятся вместе. Не понимаю как исправить.

Letter* A = new Letter;
    string so, no, sp, np;
    int io, ip;
    double m;
    ifstream fout;
    fout.open("file.txt", ios::in);
    cout << "Введите фамилию отправителя: ";
    cin.ignore(1, '\n');
    fout.ignore(1, '\n');
    getline(fout , so);
    (*(A)).surname_otpr = so;
    cout << "Введите имя отправителя: ";
    |
    |
    |
    |
    fout.close();

Ответы (0 шт):