stxxl保存并从磁盘文件中读取向量

时间:2015-05-08 13:42:45

标签: c++ stxxl

我正在努力尝试以某种方式使用stxxl库,我不仅可以将其矢量结构中的数据存储到文件中,还可以在重新运行程序时从该文件中恢复它。

我发现你可以从一个文件(http://stxxl.sourceforge.net/tags/master/classstxxl_1_1vector.html#a4d9029657cc11315cb77955fae70b877)构造一个向量,但是类“file”只包含这些函数(http://stxxl.sourceforge.net/tags/master/classstxxl_1_1file.html),但实际上并没有(我能看到)使用某个给定路径访问现有文件。

之前使用过这个库的人是否知道如何做到这一点?

提前致谢

1 个答案:

答案 0 :(得分:0)

stxxl::file是一个接口基类。根据您的操作系统,您需要一个派生类

  • stxxl::syscall_file适用于UNIX,Linux和Mac OS X,使用POSIX readwrite
  • stxxl::wincall_file适用于Windows,或
  • 使用stxxl::linuxaio_file异步I / O系统调用的Linux的
  • SYS_io_*(有关详细信息,请参阅man 7 aio)。这需要STXXL 1.4.1。

您可以使用stxxl::create_file函数在运行时决定使用哪个后端。将io_impl参数分别设置为"syscall""wincall""linuxaio"