current_zone
current_zone (현재 로컬 시간대 얻기)
시간대 데이터베이스에서 로컬 시간대를 얻는 편의 함수예요. <chrono> 헤더, C++20부터.
출처: cppreference
본문
current_zone은 시간대 데이터베이스에서 로컬 시간대를 얻어요. std::chrono::get_tzdb().current_zone()과 동등해요.
const std::chrono::time_zone* current_zone();
- 예외: 이것이 시간대 DB에 대한 첫 번째 참조인데 DB를 초기화할 수 없으면
std::runtime_error를 던져요. - 참고: 이 함수를 부르는 것이 시간대 DB에 대한 첫 참조라면, 그 호출이 DB 초기화를 일으켜요.
즉, 시간대 DB는 지연 초기화되므로 첫 호출 시점에 초기화 비용이 생기고, 그때 실패하면 예외가 날 수 있다는 점을 알아두면 돼요.
const std::chrono::time_zone* tz = std::chrono::current_zone();
// tz를 zoned_time 등에서 사용
로컬 시간대의 이름을 얻거나 그 시간대 규칙으로 시각을 변환할 때 시작점으로 쓰는 함수예요.