<experimental/filesystem> directory_entry klasa

Important

W tym artykule opisano wstępną std::experimental::filesystem implementację programu directory_entry. Ta implementacja jest oparta na specyfikacji technicznej systemu plików, która znajduje się w iso/IEC JTC 1/SC 22/WG 21 N4100. Nie std::filesystemjest to element i nie jest zgodny z implementacją języka C++17 std::filesystem . Implementacja eksperymentalna została usunięta, począwszy od zestawu narzędzi MSVC w wersji 14.51. Aby uzyskać bieżącą wersję języka C++17 std::filesystem , zobacz directory_entry klasę.

Opisuje obiekt zwracany przez *Xelement , gdzie X to lub directory_iteratorrecursive_directory_iterator.

Składnia

class directory_entry;

Uwagi

Klasa przechowuje obiekt typu path. Przechowywany path może być wystąpieniem path klasy lub typu pochodzącego z pathklasy . Przechowuje również dwie file_type wartości. Jedna wartość reprezentuje stan przechowywanej nazwy pliku. Drugi reprezentuje stan linku symbolicznego nazwy pliku.

Constructors

Konstruktor Opis
directory_entry Domyślne konstruktory zachowują się zgodnie z oczekiwaniami. Czwarty konstruktor inicjuje mypathpval, mystataby stat_arg i mysymstatsymstat_arg.

Funkcje składowe

Funkcja składowa Opis
assign Funkcja składowa przypisuje pval do mypath, stat do mystat, i symstat do mysymstat.
path Funkcja składowa zwraca wartość mypath.
replace_filename Funkcja składowa zastępuje mypathmypath.parent_path() / wartość pval, mystatstat_arg i mysymstatsymstat_arg
status Obie funkcje mystat składowe zwracają prawdopodobnie po raz pierwszy zmienione.
symlink_status Obie funkcje mysymstat składowe zwracają prawdopodobnie po raz pierwszy zmienione.

Operatorów

Operator Opis
operator!= Zwraca wartość !(*this == right).
operator= Domyślne operatory przypisania składowych zachowują się zgodnie z oczekiwaniami.
operator== Zwraca wartość mypath == right.mypath.
operator< Zwraca wartość mypath < right.mypath.
operator<= Zwraca wartość !(right < *this).
operator> Zwraca wartość right < *this.
operator>= Zwraca wartość !(*this < right).
operator const path_type& Zwraca wartość mypath.

Wymagania

Nagłówek:<experimental/filesystem>

Przestrzeń nazw: std::experimental::filesystem

przypisać

Funkcja składowa przypisuje pval do mypath, stat_arg do mystat, i symstat_arg do .mysymstat

void assign(const std::experimental::filesystem::path& pval,
    file_status stat_arg = file_status(),
    file_status symstat_arg = file_status());

Parameters

pval
Przechowywana ścieżka nazwy pliku.

stat_arg
Stan przechowywanej nazwy pliku.

symstat_arg
Stan linku symbolicznego przechowywanej nazwy pliku.

directory_entry

Domyślne konstruktory zachowują się zgodnie z oczekiwaniami. Czwarty konstruktor inicjuje mypathpval, mystataby stat_arg i mysymstatsymstat_arg.

directory_entry() = default;
directory_entry(const directory_entry&) = default;
directory_entry(directory_entry&&) noexcept = default;
explicit directory_entry(const std::experimental::filesystem::path& pval,
    file_status stat_arg = file_status(),
    file_status symstat_arg = file_status());

Parameters

pval
Przechowywana ścieżka nazwy pliku.

stat_arg
Stan przechowywanej nazwy pliku.

symstat_arg
Stan linku symbolicznego przechowywanej nazwy pliku.

operator!=

Funkcja składowa zwraca wartość !(*this == right).

bool operator!=(const directory_entry& right) const noexcept;

Parameters

prawo
Directory_entry porównywany z elementem directory_entry.

operator =

Domyślne operatory przypisania składowych zachowują się zgodnie z oczekiwaniami.

directory_entry& operator=(const directory_entry&) = default;
directory_entry& operator=(directory_entry&&) noexcept = default;

Parameters

prawo
Directory_entry kopiowane do pliku directory_entry.

operator==

Funkcja składowa zwraca wartość mypath == right.mypath.

bool operator==(const directory_entry& right) const noexcept;

Parameters

prawo
Directory_entry porównywany z elementem directory_entry.

operator<

Funkcja składowa zwraca wartość mypath < right.mypath.

bool operator<(const directory_entry& right) const noexcept;

Parameters

prawo
Directory_entry porównywany z elementem directory_entry.

operator<=

Funkcja składowa zwraca wartość !(right < *this).

bool operator<=(const directory_entry& right) const noexcept;

Parameters

prawo
Directory_entry porównywany z elementem directory_entry.

operator>

Funkcja składowa zwraca wartość right < *this.

bool operator>(const directory_entry& right) const noexcept;

Parameters

prawo
Directory_entry porównywany z elementem directory_entry.

operator>=

Funkcja składowa zwraca wartość !(*this < right).

bool operator>=(const directory_entry& right) const noexcept;

Parameters

prawo
Directory_entry porównywany z elementem directory_entry.

operator const path_type&

Operator elementu członkowskiego zwraca wartość mypath.

operator const std::experimental::filesystem::path&() const;

ścieżka

Funkcja składowa zwraca wartość mypath.

const std::experimental::filesystem::path& path() const noexcept;

replace_filename

Funkcja składowa zastępuje mypathmypath.parent_path() / wartość pval, mystatstat_arg i mysymstatsymstat_arg

void replace_filename(
    const std::experimental::filesystem::path& pval,
    file_status stat_arg = file_status(),
    file_status symstat_arg = file_status());

Parameters

pval
Przechowywana ścieżka nazwy pliku.

stat_arg
Stan przechowywanej nazwy pliku.

symstat_arg
Stan linku symbolicznego przechowywanej nazwy pliku.

stan

Obie funkcje mystat składowe mogą być najpierw zmienione w następujący sposób:

  1. Jeśli status_known(mystat) nie zrobisz nic.

  2. W przeciwnym razie, jeśli !status_known(mysymstat) && !is_symlink(mysymstat) to polecenie mystat = mysymstat.

file_status status() const;
file_status status(error_code& ec) const noexcept;

Parameters

ec
Kod błędu stanu.

Obie funkcje mysymstat składowe zwracają prawdopodobnie najpierw zmienione w następujący sposób: Jeśli status_known(mysymstat) nie zrobisz nic. W przeciwnym razie mysymstat = symlink_status(mypval).

file_status symlink_status() const;
file_status symlink_status(error_code& ec) const noexcept;

Parameters

ec
Kod błędu stanu.

Zobacz także

<experimental/filesystem>
path klasa