我正在学习C ++,现在我正在阅读有关使用文件的内容。正如我所读到的,有很多变种。所以我想问一下,在C ++中使用文件的正确方法是什么?使用 fstream(ifstream和ofstream)?我已经阅读了一些关于fopen工作得更快的意见,所以最好使用它,但它不会是C ++。 谢谢你的关注!
答案 0 :(得分:3)
在C ++中工作时使用ifstream
和ofstream
。它不应该比FILE*
慢得多,但更安全。
答案 1 :(得分:0)
我同意Juraj对i / ofstream与FILE *的评估,我只是想了解一下内存映射文件。在Boost.SpiritClassic中,有一个鲜为人知的gem叫做mmap_file_iterator:
http://www.boost.org/doc/libs/1_47_0/boost/spirit/home/classic/iterator/file_iterator.hpp
我相信如果你在windows或POSIX环境中,它将对你的文件进行内存映射,它是一个RandomAccessIterator,而不是一个Input / OutputIterator。
至于什么方法是“正确的”,这一切都取决于您的应用程序的要求。探索所有选项并将结果与您想象的维度进行比较绝对是一件好事。