zoned_time

zoned_time (시간대 적용 시점)

sys 시각과 시간대를 결합해 "특정 시간대의 현지 시각"을 나타내는 타입이에요. <chrono> 헤더, C++20부터.

출처: cppreference

본문

std::chrono::zoned_time은 시간대(time_zone)와 sys(절대) 시점을 함께 담아요. 그래서 생성 시점의 현지 시간이 자동으로 결정돼요.

template<class Duration, class TimeZonePtr = const std::chrono::time_zone*>
class zoned_time;
  • 생성자에 time_zone*(또는 이름 std::string)과 sys/로컬 시점을 넘겨요.
  • get_info(), get_local_time(), get_sys_time() 등으로 현지 시각·오프셋을 얻어요.
  • 로컬 시각이 모호/없으면 생성 시 choose(earliest/latest) 또는 예외가 적용돼요.
using namespace std::chrono;
zoned_time zt{"Asia/Seoul", system_clock::now()};
local_time lt = zt.get_local_time();   // 서울 현지 시각

"어떤 시간대의 현재 시각"을 표현하고, sys(절대) 시각은 바뀌지 않으면서 표시만 시간대별로 바꾸는 데 쓰는 타입이에요. 시간대 변환을 자주 하는 응용에 유용해요.

더 알아보기 (Learn more)

cppreference