operator/
operator/ (chrono 날짜 결합 연산자)
operator/는 chrono의 날짜 관련 타입(year, month, day, weekday 등)을 결합해 복합 날짜 타입을 만드는 데 쓰이는 연산자 예요. <chrono> 헤더, C++20부터.
출처: cppreference
본문
C++20 chrono는 날짜 조각을 결합할 때 슬래시(/) 연산자를 제공해요. 가독성 좋은 날짜 리터럴을 만들 수 있어요.
using namespace std::chrono;
Year / Month -> year_month
Year / Month / Day -> year_month_day
Month / Day -> month_day
Day / Month -> month_day (반대 순서도 지원)
Year / Month / Weekday -> year_month_weekday
예를 들어:
auto d1 = 2023y / June / 15; // year_month_day (2023-06-15)
auto d2 = June / 15 / 2023y; // 연도 위치가 뒤여도 가능
auto d3 = May / Sunday[2]; // 5월 둘째 일요일
auto d4 = February / last; // 2월 마지막 날
가독성이 높아서 달력 계산 시 자주 쓰여요. 2023y/Month/Day 형태를 operator/로 조합하면 올바른 chrono 날짜 타입이 자동으로 만들어져요.
주의할 점: 과부하가 많고 조합 순서가 다양해서, 어떤 타입이 나오는지 헷갈릴 수 있어요. 확실한 조합(year/month/day)을 쓰는 게 안전해요.