- filesystem[meta header]
- std::filesystem[meta namespace]
- file_status[meta class]
- function[meta id-type]
- cpp20[meta cpp]
friend bool operator==(const file_status& x, const file_status& y) noexcept; // (1) C++20
等値比較を行う
return x.type() == y.type() && x.permissions() == y.permissions();
- type()[link type.md]
- permissions()[link permissions.md]
- この演算子により、
operator!=
が使用可能になる (C++20)
#include <cassert>
#include <filesystem>
namespace fs = std::filesystem;
int main()
{
fs::file_status a;
a.type(fs::file_type::regular);
fs::file_status b;
b.type(fs::file_type::regular);
assert(a == b);
}
- ==[color ff0000]
- type[link type.md]
- fs::file_type[link /reference/filesystem/file_type.md]
- C++20
- Clang:
- GCC: 10 [mark verified]
- Visual C++: ??
- P1614R2 The Mothership has Landed
- C++20での三方比較演算子の追加と、関連する演算子の自動導出