stxxl сохраняет и читает вектор из файла на диске

Я пытаюсь использовать библиотеку stxxl таким образом, чтобы не только сохранить данные из их векторной структуры в файл, но и восстановить их из этого файла при повторном запуске моей программы.

Я обнаружил, что вы можете построить вектор из файла ( http://stxxl.sourceforge.net/tags/master/classstxxl_1_1vector.html#a4d9029657cc11315cb77955fae70b877 ) но класс «файл» содержит только эти функции ( http://stxxl.sourceforge.net/tags/master/classstxxl_1_1file.html ) без возможности (что я вижу) фактически получить доступ к существующему файлу с некоторым заданным путем.

У кого-то, кто работал с этой библиотекой раньше, есть идея, как это сделать?

заранее спасибо

0

Решение

stxxl::file базовый класс интерфейса В зависимости от вашей операционной системы вам нужен один из производных классов

  • stxxl::syscall_file для UNIX, Linux и Mac OS X с использованием POSIX read а также write,
  • stxxl::wincall_file для Windows или
  • stxxl::linuxaio_file для Linux с использованием SYS_io_* асинхронные системные вызовы ввода / вывода (см. man 7 aio для деталей). Для этого требуется STXXL 1.4.1.

Вы можете использовать stxxl::create_file функция, чтобы решить во время выполнения, какой бэкэнд использовать. Установить io_impl параметр для "syscall", "wincall", или же "linuxaio"соответственно.

0

Другие решения


По вопросам рекламы [email protected]