error: no matching function for call to 'std::basic_ifstream<char>::open(std::string&)

    string filename = "1.txt";
    ifstream fin;
    fin.open(filename);

上述语句会产生如下错误:

error: no matching function for call to 'std::basic_ifstream<char>::open(std::string&)

原因是C++的string类无法作为open的参数。

解决方案:使用C的字符串。

例:

    char filename[10];
    strcpy(filename, "1.txt");
    ifstream fin;
    fin.open(filename);


posted on 2012-12-15 23:23  铁树银花  阅读(5616)  评论(0编辑  收藏  举报

导航