std::chrono::zoned_time 연산자
std::chrono::zoned_time 연산자 (operator== 등)
두 std::chrono::zoned_time 값을 비교하는 비교 연산자예요. 저장된 시각(시스템 시각 기준)을 비교해요. C++20부터 있어요.
출처: cppreference
본문
<chrono> 헤더에 정의돼 있고, zoned_time용 비교 연산자예요.
template< class Duration1, class TimeZonePtr1,
class Duration2, class TimeZonePtr2 >
bool operator==( const std::chrono::zoned_time<Duration1, TimeZonePtr1>& x,
const std::chrono::zoned_time<Duration2, TimeZonePtr2>& y ); // (1)
// operator!=
두 zoned_time 값 x와 y를 비교해요. 시간대와 무관하게, 둘이 나타내는 실제 시점(시스템 시각 get_sys_time())이 같은지를 비교해요. 즉 같은 순간을 가리키면 시간대가 달라도 ==가 true예요.
- 반환 값: (1)
x와y가 같은 시점을 나타내면true, 아니면false.!=는 그 반대.
예제를 보면요.
#include <chrono>
#include <iostream>
int main()
{
using namespace std::chrono;
zoned_time zt_seoul{"Asia/Seoul", sys_days{2023y/September/4}};
zoned_time zt_utc{"Etc/UTC", sys_days{2023y/September/4}};
std::cout << std::boolalpha << (zt_seoul == zt_utc) << '\n'; // true (같은 순간)
}
서로 다른 시간대여도 같은 시점을 나타내면 동등한 것으로 취급돼요.