这有效:
file.open("Levels\\test.txt");
这不是:
string pathname = "Levels\\test.txt";
file.open(pathname);
它输出以下错误:
no matching function for call to 'std::basic_ifstrea<char, std::char_traits<char> >::open
(std::string&)'
答案 0 :(得分:5)
该成员函数需要char const*
,而不是std::string
;你需要传递它pathname.c_str()
。
(在C ++ 0x中,open
的重载需要std::string
,因此您的代码将在某一天工作;您的实现显然不支持此功能。)