這些非成員運算子 std::filesystem::path 會在 C++17 <filesystem> 標頭中宣告。 比較運算子以通用格式逐元素比較兩條路徑,使用 path::compare,而非原始字串。 使用這個 equivalent 函式來判斷兩個路徑(例如相對路徑與絕對路徑)是否指涉磁碟上的相同檔案或目錄。
Note
本頁記錄了 C++17 std::filesystem 運算子。 關於 MSVC 在 <experimental/filesystem>中提供的歷史前標準運算子,請參見<experimental/filesystem>運算子。
如需詳細資訊,請參閱檔案系統巡覽 (C++)。
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)。
運算元<
bool operator<(const path& left, const path& right) noexcept;
函數返回 left.compare(right) < 0。
運算子<=
bool operator<=(const path& left, const path& right) noexcept;
函數返回 !(right < left)。
運算元>
bool operator>(const path& left, const path& right) noexcept;
函數返回 right < left。
運算子>=
bool operator>=(const path& left, const path& right) noexcept;
函數返回 !(left < right)。
operator/
path operator/(const path& left, const path& right);
函數返回 path(left) /= right。
運算元<<
template <class Elem, class Traits>
basic_ostream<Elem, Traits>& operator<<(basic_ostream<Elem, Traits>& os, const path& pval);
函式會將路徑以引號字串的形式插入串流中。 它會傳回 os << quoted(pval.string<Elem, Traits>())。
運算元>>
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;