C 语言的 time_t + struct tm 组合在处理时间时几乎没有任何类型安全可言:时间戳是 long、时间间隔是 double 秒、月份从 0 开始、时区转换依赖全局 TZ 环境变量。std::chrono 从 C++11 起步,用一套精密的类型系统彻底终结了这一切——它把时间单位编码到类型里,让"把秒当成毫秒传进函数"这类错误变成编译错误而非凌晨三点的 P0 事故。
C++20 是 chrono 的第二个里程碑:日历类型、时区数据库、std::format 支持和基于 chrono::parse 的字符串解析,让 chrono 从"底层基础库"一跃成为"日常时间处理的首选工具"。