- chrono[meta header]
- std::chrono[meta namespace]
- function[meta id-type]
- cpp20[meta cpp]
namespace std::chrono {
template <class Duration1, class Duration2, class TimeZonePtr>
bool operator==(const zoned_time<Duration1, TimeZonePtr>& x,
const zoned_time<Duration2, TimeZonePtr>& y); // (1) C++20
}zoned_time同士の等値比較を行う。
コンストラクタで設定されたタイムゾーンオブジェクトへのポインタzone、およびシステム時間の時間点tpがあるとして、以下を返す:
- (1) :
return x.zone == y.zone && x.tp == y.tp;- この演算子により、
operator!=が使用可能になる
#include <cassert>
#include <chrono>
namespace chrono = std::chrono;
int main()
{
auto now = chrono::system_clock::now();
chrono::zoned_time zt1{"Asia/Tokyo", now};
chrono::zoned_time zt2{chrono::locate_zone("Asia/Tokyo"), now};
chrono::zoned_time zt3{"UTC", now};
assert(zt1 == zt2);
assert(zt1 != zt3);
}- chrono::locate_zone[link /reference/chrono/locate_zone.md]
- C++20
- Clang: (9.0時点で実装なし)
- GCC: (9.2時点で実装なし)
- Visual C++: (2019 Update 3時点で実装なし)