Проверка наличия нескольких файлов с помощью STD: FileSystem :: существует быстрее, чем использование набора имен файловC++

Программы на C++. Форум разработчиков
Anonymous
Проверка наличия нескольких файлов с помощью STD: FileSystem :: существует быстрее, чем использование набора имен файлов

Сообщение Anonymous »

Я хочу знать, если проверка множественных файлов в каталоге с использованием std :: unomordered_set имен файлов с использованием std :: fileystem :: diefory_iterator быстрее, чем использование std :: fileSystem :: exists . Есть какое-то преимущество в том, чтобы сделать это?#include
#include

void download_file(const std::string& file_name){
// download file and save on directory
}

int main(){

std::unordered_set existing_files;

// adding files of directory to the set
for (const auto& entry : std::filesystem::directory_iterator()) {
existing_files.insert(entry.path().filename().string());
}

auto files_to_check = { "file1.txt", "file2.txt", ... };

for (const auto& file_name: files_to_check) {
if (existing_files.contains(file_name)) { // std::filesystem::exists(file_name)
continue;
}
download_file(file_name);
}

return 0;
}


Подробнее здесь: https://stackoverflow.com/questions/795 ... aster-than

Вернуться в «C++»