2
對不起,如果問題不正確,我在Objective-C中很新。
我明白爲什麼這個代碼拋出警告:「警告:傳遞‘initWithObjectsAndKeys:’的參數1,使指針從整數無」在具有可變參數的方法中投射警告
NSDictionary *dictNames =
[[NSDictionary alloc] initWithObjectsAndKeys:
3, @"",
4, @"",
5, @"",nil];
鍵和一個NSDictionary中的值必須是NSObject的,而不是基本類型,就像整數3,4和5一樣。(必要時糾正我)。
但我不明白爲什麼這個警告消失了第一個鍵的唯一「正確鍵入」。
NSDictionary *dictNames =
[[NSDictionary alloc] initWithObjectsAndKeys:
[NSNumber numberWithInteger:3], @"",
4, @"",
5, @"",nil];
這是因爲NSDictionary假定其他Keys的類型?這種初始化方式是否正確?
我看到...實際上,當我必須通過key來獲取對象時,我必須使用objectForKey:(id)aKey來完成,然後Objects和Keys必須是(id)。 感謝您的回答:-) – rubdottocom 2010-03-27 12:45:46
第一個arg是一個Obj C對象嗎?如果不是,聲明的語法應該是什麼? – 2011-09-09 06:20:07
@Saptarshi:不,例如' - (int)foo:(int)firstInt,...' – kennytm 2011-09-09 08:38:55