Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > не компилируется программа


Автор: Artefact 10.3.2008, 21:45
Написал код:
Код

#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main ()
{
    string text, path;
    cout<<"Введите имя создаваемого файла и нажмите Enter "<<endl;
    getline(cin, path);
    
    ofstream file_out(path); 
    if (! file_out)
    {
        cout<<"Файл "<<path<<" не может быть открыт";
        return -1;
    }
    cout<<"Файл "<<path<<" успешно открыт"<<endl;
    cout<<"Можете приступать к работе."<<endl;
    getline(cin, text);
    file_out<<text<<endl;
    file_out.close();
    return 0;
}
    



Но при попытки компилировать выдает следующее:
Цитата

artefact@artefact-laptop:~/moi_progi/cppBO/8.1$ g++ 812.cpp -o 812
812.cpp: In function ‘int main()’:
812.cpp:12: ошибка: нет подходящей функции для вызова ‘std::basic_ofstream<char, std::char_traits<char> >::basic_ofstream(std::string&)’
/usr/include/c++/4.1.3/fstream:572: замечание: претенденты: std::basic_ofstream<_CharT, _Traits>::basic_ofstream(const char*, std::_Ios_Openmode) [with _CharT = char, _Traits = std::char_traits<char>]
/usr/include/c++/4.1.3/fstream:556: замечание:              std::basic_ofstream<_CharT, _Traits>::basic_ofstream() [with _CharT = char, _Traits = std::char_traits<char>]
/usr/include/c++/4.1.3/iosfwd:92: замечание:              std::basic_ofstream<char, std::char_traits<char> >::basic_ofstream(const std::basic_ofstream<char, std::char_traits<char> >&)


Почему он ругается на ofstream file_out(path); ? Объясните пожалуйста мою ошибку.

Автор: nickless 10.3.2008, 22:04
Цитата(Artefact @  10.3.2008,  19:45 Найти цитируемый пост)
Почему он ругается на ofstream file_out(path); ?

Потому что конструктор ofstream принимает const char *, а не std::string.

Автор: Artefact 11.3.2008, 00:33
Спасибо smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)