<experimental/filesystem> directory_entry Klasse

Important

In diesem Artikel wird die vorstandardliche std::experimental::filesystem Implementierung von directory_entry. Diese Implementierung basiert auf der technischen Spezifikation des Dateisystems, die in ISO/IEC JTC 1/SC 22/WG 21 N4100 zu finden ist. Sie ist nicht std::filesystemkompatibel und ist nicht mit der C++17-Implementierung std::filesystem kompatibel. Die experimentelle Implementierung wurde ab MSVC-Toolset, Version 14.51, entfernt. Die aktuelle C++17-Version std::filesystem finden Sie unter directory_entry Klasse.

Beschreibt ein Objekt, das von *XX zurückgegeben wird, wobei X ein directory_iterator oder ein .recursive_directory_iterator

Syntax

class directory_entry;

Hinweise

Die Klasse speichert ein Objekt vom Typ path. Der Gespeicherte path kann eine Instanz der path Klasse oder eines Typs sein, von dem abgeleitet pathwird. Außerdem werden zwei file_type Werte gespeichert. Ein Wert stellt den Status des gespeicherten Dateinamens dar. Die andere stellt den symbolischen Verknüpfungsstatus des Dateinamens dar.

Constructors

Konstruktor Description
directory_entry Die standardmäßigen Konstruktoren verhalten sich wie erwartet. Der vierte Konstruktor initialisiert mypath für "pval", mystat " stat_arg" und mysymstat " symstat_arg".

Memberfunktionen

Memberfunktion Description
assign Die Memberfunktion weist pval zu mypath, stat und mystatsymstat zu mysymstat.
path Die Memberfunktion gibt zurück mypath.
replace_filename Die Memberfunktion ersetzt mypath durch mypath.parent_path() / pval, mystat durch stat_arg und mysymstat durch symstat_arg
status Beide Memberfunktionen geben möglicherweise zuerst geändert zurück mystat .
symlink_status Beide Memberfunktionen geben möglicherweise zuerst geändert zurück mysymstat .

Betriebspersonal

Operator Description
operator!= Gibt !(*this == right) zurück.
operator= Die standardmäßigen Memberzuweisungsoperatoren verhalten sich erwartungsgemäß.
operator== Gibt mypath == right.mypath zurück.
operator< Gibt mypath < right.mypath zurück.
operator<= Gibt !(right < *this) zurück.
operator> Gibt right < *this zurück.
operator>= Gibt !(*this < right) zurück.
operator const path_type& Gibt mypath zurück.

Anforderungen

Kopfball:<experimental/filesystem>

Namespace:std::experimental::filesystem

Zuweisen

Die Memberfunktion weist Pval zu mypath, stat_argmystatund symstat_arg zu mysymstat.

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

Parameter

pval
Der gespeicherte Dateinamepfad.

stat_arg
Der Status des gespeicherten Dateinamens.

symstat_arg
Der symbolische Verknüpfungsstatus des gespeicherten Dateinamens.

directory_entry

Die standardmäßigen Konstruktoren verhalten sich wie erwartet. Der vierte Konstruktor initialisiert mypath für "pval", mystat " stat_arg" und mysymstat " symstat_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());

Parameter

pval
Der gespeicherte Dateinamepfad.

stat_arg
Der Status des gespeicherten Dateinamens.

symstat_arg
Der symbolische Verknüpfungsstatus des gespeicherten Dateinamens.

operator!=

Die Memberfunktion gibt zurück !(*this == right).

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

Parameter

right
Die directory_entry verglichen mit dem directory_entry.

operator =

Die standardmäßigen Memberzuweisungsoperatoren verhalten sich erwartungsgemäß.

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

Parameter

right
Die directory_entry , die in die directory_entryDatei kopiert wird.

operator==

Die Memberfunktion gibt zurück mypath == right.mypath.

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

Parameter

right
Die directory_entry verglichen mit dem directory_entry.

operator<

Die Memberfunktion gibt zurück mypath < right.mypath.

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

Parameter

right
Die directory_entry verglichen mit dem directory_entry.

operator<=

Die Memberfunktion gibt zurück !(right < *this).

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

Parameter

right
Die directory_entry verglichen mit dem directory_entry.

operator>

Die Memberfunktion gibt zurück right < *this.

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

Parameter

right
Die directory_entry verglichen mit dem directory_entry.

operator>=

Die Memberfunktion gibt zurück !(*this < right).

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

Parameter

right
Die directory_entry verglichen mit dem directory_entry.

Operator const path_type&

Der Memberoperator gibt zurück mypath.

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

path

Die Memberfunktion gibt zurück mypath.

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

replace_filename

Die Memberfunktion ersetzt mypath durch mypath.parent_path() / pval, mystat durch stat_arg und mysymstat durch symstat_arg

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

Parameter

pval
Der gespeicherte Dateinamepfad.

stat_arg
Der Status des gespeicherten Dateinamens.

symstat_arg
Der symbolische Verknüpfungsstatus des gespeicherten Dateinamens.

status

Beide Memberfunktionen geben mystat möglicherweise zuerst geändert wie folgt zurück:

  1. Wenn status_known(mystat) Sie dann nichts tun.

  2. Andernfalls , wenn !status_known(mysymstat) && !is_symlink(mysymstat) dann mystat = mysymstat.

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

Parameter

Eg
Der Statusfehlercode.

Beide Memberfunktionen geben mysymstat möglicherweise zuerst wie folgt geändert zurück: Wenn status_known(mysymstat) sie nichts tun. Andernfalls, mysymstat = symlink_status(mypval).

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

Parameter

Eg
Der Statusfehlercode.

Siehe auch

<experimental/filesystem>
path-Klasse