可能重复:
我需要关闭std :: fstream吗?
int main() {
ofstream a("a.txt");
a << "A" << endl;
//a.close();
}
Run Code Online (Sandbox Code Playgroud)
这工作正常,但是不是必须在程序结束时关闭文件?
Ben*_*enj 22
ofstream将在调用析构函数时关闭文件,即当它超出范围时.但是,打电话close()肯定没有任何伤害,并表达了你对维护程序员的意图.
调用close()还允许您检查close()是否成功,因为您还可以检查failbit:
http://www.cplusplus.com/reference/iostream/ofstream/close/