std::chronoの時間型なんかは良い例だよね

・clock - clock = duration (例. 13時 - 12時 = 1時間)
・clock + duration = clock (12時+1時間=13時)
・duration + duration = duration (1時間 + 1時間 = 2時間)
・clock + clock: 不可

こういう型表現もできるのは良い点