Я нашел аккуратный метод внутри <experimental/filesystem>
include, который сообщает my, является ли путь файлом или каталогом, но выдает ошибку при попытке использовать его в g ++ v 7.4.0. Метод, который я пытаюсь использовать: .is_regular_file()
.
Это даже на cppref, https://en.cppreference.com/w/cpp/experimental/fs/is_regular_file.
Но при компиляции я получаю "... имеет нет члена с именем is_regular_file ". Я не могу использовать обычную файловую систему, потому что моя целевая система (Ubuntu 18.04 LTS) имеет предустановленный g ++ 7.4.0 и не может быть изменена.
Есть идеи, что я делаю неправильно? Кто-нибудь знает альтернативу is_regular_file для меня, чтобы я мог проверить, является ли файл каталогом или файлом?
Мои включения:
#include <string>
#include <vector>
#include <experimental/filesystem>
И я использую следующие флаги: - std = c ++ 17 -lstdc ++ fs -O3 -Wall -Wextra -Wpedanti c -Werror