int main() {
ofstream a("a.txt");
a << "A" << endl;
//a.close();
}
这工作得很好,但不是有必要关闭该文件在程序的结束?
int main() {
ofstream a("a.txt");
a << "A" << endl;
//a.close();
}
这工作得很好,但不是有必要关闭该文件在程序的结束?
ofstream
将在调用析构函数时关闭文件,即当文件超出范围时。但是,调用close()
当然不会造成任何伤害,并表达您对维护程序员的意图。
调用close()
还允许您检查是否关闭()是成功的,因为你就可以同时检查failbit
:
这是必要的,如果你想检查结果(接近调用成功或失败)。
否则,流的析构函数会尝试为您关闭文件。
看到这个问题http://stackoverflow.com/questions/4802494/do-i-need-to-close-a-stdfstream(并且即使那一个是重复的) – Dirk
@Dirk我只是寻找的不是ifstream下次我会广泛搜索。如果您愿意,请关闭我的问题。 – truongnam1996