std::filesystem::pathのこれらの非メンバー演算子は、C++17 <filesystem> ヘッダーで宣言されています。 比較演算子は、生の文字列ではなく、 path::compareを使用して、要素ごとに 2 つのパス要素をジェネリック形式で比較します。
equivalent関数を使用して、2 つのパス (相対パスや絶対パスなど) がディスク上の同じファイルまたはディレクトリを参照しているかどうかを判断します。
Note
このページでは、C++17 std::filesystem 演算子について説明します。 MSVC が <experimental/filesystem>で提供した従来の演算子については、 <experimental/filesystem> 演算子を参照してください。
詳細については、「ファイル システムのナビゲーション」を参照してください。
Requirements
ヘッダー: <filesystem>
名前 空間:std::filesystem
operator==
bool operator==(const path& left, const path& right) noexcept;
関数は left.compare(right) == 0を返します。
operator!=
bool operator!=(const path& left, const path& right) noexcept;
関数は !(left == right)を返します。
operator<
bool operator<(const path& left, const path& right) noexcept;
関数は left.compare(right) < 0を返します。
operator<=
bool operator<=(const path& left, const path& right) noexcept;
関数は !(right < left)を返します。
operator>
bool operator>(const path& left, const path& right) noexcept;
関数は right < leftを返します。
operator>=
bool operator>=(const path& left, const path& right) noexcept;
関数は !(left < right)を返します。
operator/
path operator/(const path& left, const path& right);
関数は path(left) /= rightを返します。
operator<<
template <class Elem, class Traits>
basic_ostream<Elem, Traits>& operator<<(basic_ostream<Elem, Traits>& os, const path& pval);
この関数は、引用符で囲まれた文字列としてストリームにパスを挿入します。
os << quoted(pval.string<Elem, Traits>()) を返します。
operator>>
template <class Elem, class Traits>
basic_istream<Elem, Traits>& operator>>(basic_istream<Elem, Traits>& is, path& pval);
この関数は、ストリームから引用符で囲まれた文字列を抽出し、 pvalに割り当てます。 次のコマンドが実行されます。
basic_string<Elem, Traits> str;
is >> quoted(str);
pval = str;
return is;