![](/img/trans.png)
[英]error: cannot convert ‘std::ifstream {aka std::basic_ifstream<char>}’ to ‘char**’ for getline() function
[英]Cannot convert 'std::ifstream' {aka 'std::basic_ifstream<char>'} to 'bool' in return
任何人都可以帮忙吗? 我收到标题中的错误
bool fexists(const char *filename)
{
std::ifstream ifile(filename);
return ifile;
}
bool
转换运算符被标记为explicit
,这意味着它不能用于像这样的隐式转换。
如果 stream 是good()
则返回:
return ifile.good();
请注意,当在实际条件下使用时,这是明确需要bool
值并且将使用转换运算符的地方。
或者考虑您要执行的操作,检查文件是否存在,使用std::filesystem::exists
代替。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.