2009-02-09 49 views
0

我正在學習Objective-C,通過Aaron Hillegass的書「Mac OS X中的可可編程 - 第三版」。我在Xcode合作開發了一些示例代碼,並不斷收到關於這種方法的最後一行編譯器警告:編譯器警告「不同目標C類型的任務」

- (void) setEntryDate:(NSCalendarDate *) date { 
    [date retain]; 
    [entryDate release]; 
    entryDate = date; 
} 

警告內容「警告:分配從不同的Objective-C型」。什麼原因導致此警告?我如何防止它再次發生?

它似乎沒有影響程序的執行,但我不明白問題是什麼,或者即使真的有問題(這可能只是一個偏執編譯器?)。

+0

哪裏是entryDate的聲明?你在這裏丟失了一塊... – 2009-02-09 08:27:42

+0

entryDate在頭文件中聲明文件 – 2009-02-09 08:32:33

回答

2

NSCalendar和NSCalendarDate確實是不同的類型。你應該決定哪一個你想entryDate(可能是NSCalendarDate,由「日期」事件來判斷)