我正在将现有的旧代码升级以使用VS 2019*,在代码中,我有以下函数,在返回行失败:
int foo(const char *fn) const
{
ofstream out(fn,ios::binary);
if (out)
{
//...
}
return out!=0;
}
我得到的错误是:
原诗人的意图是什么,最好的解决方法是什么? *在VS 2010上这段代码可以成功编译。错误 C2678 二进制'!=':未找到接受左操作数类型为 'std::ofstream' 的运算符(或无可接受的转换)
return (bool)out != 0;
是能编译过的。但是考虑到这个函数返回类型是int
,这样做仍然看起来毫无意义。 - Blaze