Как происходит перемещение файлов между каталогами на физическом уровне? В общем, в C++ STL Filesystem просто нет функции для перемещения файлов между каталогами, типа std::move(). И это, в общем-то, не проблема, ведь можно скопировать и удалить. Но соль в том, что я всегда думал, что на уровне ОС перемещение не физическое, а просто меняется указатель (метка, запись... не знаю как правильно). Это просто косяк STL, или перемещение действительно достигается копированием и удалением?

11 Июл 2020 в 19:45
366 +1
0
Ответы
1

На физическом уровне перемещение файла между каталогами действительно может происходить разными способами, в зависимости от операционной системы и файловой системы. В некоторых случаях файл может перемещаться путем изменения указателей на данные на диске, что позволяет избежать копирования и удаления файла. Однако, в некоторых случаях файл все-таки может быть скопирован и затем удален из исходного местоположения.

В C++ STL Filesystem отсутствует функция для перемещения файлов между каталогами, поэтому приходится использовать более длинный способ через копирование и удаление файла. Это, скорее всего, не является косяком STL, а скорее ограничением данной библиотеки. Если вам необходимо перемещать файлы без копирования, можно воспользоваться системными вызовами операционной системы или другими библиотеками, поддерживающими перемещение файлов.

18 Апр в 10:47
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 588 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир