Existe uma maneira melhor de encontrar a meia-noite de amanhã?

Existe uma maneira melhor de fazer isso?

-(NSDate *)getMidnightTommorow {
    NSCalendarDate *now = [NSCalendarDate date];
    NSCalendarDate *tomorrow = [now dateByAddingYears:0 months:0 days:1 hours:0 minutes:0 seconds:0];
    return [NSCalendarDate dateWithYear:[tomorrow yearOfCommonEra]
                                  month:[tomorrow monthOfYear]
                                    day:[tomorrow dayOfMonth]
                                   hour:0
                                 minute:0
                                 second:0
                               timeZone:[tomorrow timeZone]];
}

Note que eu sempre quero a próxima meia-noite, mesmo que seja meia-noite quando eu fizer essa ligação, no entanto, se acontecer de ser 23:59:59, é claro que quero a meia-noite que está chegando em um segundo.

As funções da linguagem natural parecem escamosas e não sei o que o Cocoa faria se eu passasse 32 no campo "dia". (Se isso funcionasse, eu poderia cancelar a chamada [now dateByAddingYears: ...])

questionAnswers(5)

yourAnswerToTheQuestion