NSDate の compare: は NSComparisonResult を返すのだが、NSOrderedAscending と NSOrderedDescending はどっちがどっちなのか直感的に分かりにくい。比較演算子ならそうでもないんだけど、Ascending と Descending という単語を解釈するのに時間がかかる。なので最初から別の言葉に置き換えてしまう。 #define WKR_IsEarlier NSOrderedAscending #define WKR_IsLater NSOrderedDescending #define WKR_L_IsMorePastThan_R NSOrderedAscending #define WKR_L_IsMoreFutureThan_R NSOrderedDescending NSDate* now=[NSDate date]