Come funziona il cmtimecompare?
Domanda
Come funziona CmtimeCompare?Apple sembra aver lasciato fuori i valori di ritorno dalla loro documentazione.
Suppongo se i tempi sono uguali restituiscono zero e restituiscono positivo o negativo a 1 in base al quale è maggiore?
Soluzione
da cmtime.h :
.restituisce la relazione numerica (-1= inferiore a, 1= maggiore di, 0= uguale) di due cm.
-1 viene restituito se il tempo1 è inferiore a Time2.0 è restituito se sono uguali.1 viene restituito se il tempo1 è maggiore del tempo2.
Modifica:
Si prega di notare che:
.cmTimes non validi sono considerati uguali ad altri cmTimes non validi, e maggiore di qualsiasi altro cmtime.L'infinito positivo è considerata inferiore a qualsiasi cmtime non valido, uguale a se stesso e maggiore di qualsiasi altro cmtime.È considerato un cmtime indefinito essere inferiore a qualsiasi cmtime non valido, meno che infinito positivo, uguale a se stesso, e maggiore di qualsiasi altro cmtime.L'infinito negativa è considerata uguale a se stessa, e meno di qualsiasi altro cmtime.
Altri suggerimenti
Per un'alternativa è molto più facile da leggere rispetto a CMTimeCompare()
, considerare l'utilizzo del CMTIME_COMPARE_INLINE
macro .Ad esempio
CMTIME_COMPARE_INLINE(time1, <=, time2)
.
restituirà true se Time1 <= time2