2013-01-06 97 views
4

下面的代碼:兼容的指針類型比較

NSDate* date1 = [NSDate date]; 
NSDate* date2 = [NSDate date]; 
[date1 compare:date2]; 
[(NSDate*)[NSDate date] compare:date2]; 
[[NSDate date] compare:date2]; 

給了我「不兼容的指針類型發送‘的NSDate *’到類型的參數‘的NSNumber *’」最後日期比較,但不是第二!

這是怎麼回事?

回答

5

您需要投射到NSDate,因爲+ (id)date返回一個ID,而不是NSDate。

+0

是的。當我意識到[(NSDate *)[NSDate date] compare:date2]時,我得出了同樣的結論;正在工作。說得通。 – Lolo