我有
ofstream myfile;
myfile.open(filename,ios::out | ios::app);
if(myfile.good()){ do smtg};
myfile.write(taskToWrite->buffer,taskToWrite->length);
Run Code Online (Sandbox Code Playgroud)
有没有办法检查写入功能是否不起作用?我之前用 good() 检查过,但是如果我在编写时出错,我该如何检查呢?我无法理解该函数返回什么。
该write函数返回流本身。因此,在您的情况下,它将返回对 的引用myfile。可以转换流类型以bool检查其失败状态。所以你可以简单地使用这个:
if (myfile.write(taskToWrite->buffer,taskToWrite->length)) {
// Success
}
Run Code Online (Sandbox Code Playgroud)