leap_second
leap_second (윤초 정보)
하나의 윤초(leap second)를 나타내는 날짜/시간 타입이에요. <chrono> 헤더, C++20부터.
출처: cppreference
본문
std::chrono::leap_second는 특정 날짜의 윤초를 나타내요.
class leap_second;
보통 std::chrono::utc_clock과 관련해, 달력에 삽입되는 윤초를 표현하는 데 쓰여요. UTC 시계는 지구 자전과 원자시의 차이를 보정하기 위해 윤초를 추가/삭제하는데, leap_second가 그 한 번의 발생을 담아요.
각 leap_second는 그 윤초가 발생한 UTC 날짜와, 윤초의 부호(+1 또는 -1초) 등을 제공해요. std::chrono::tzdb의 leap_seconds 벡터로 전체 윤초 목록을 얻을 수 있어요.
const std::chrono::tzdb& db = std::chrono::get_tzdb();
for (const auto& ls : db.leap_seconds) {
// ls.date()로 발생 날짜, ls.value()로 초 조정값 확인
}
보통 UTC <-> 달력 시각 변환이나 정밀 시간 시스템에서 윤초를 처리할 때 사용돼요. 일반 응용에서는 거의 직접 쓰지 않아요.