難道KVC拿起任何的Objective-C的文字又名「現代的Objective-C」KVC與現代語法
我不知道,因爲這將是非常方便的,如果有一些短得多的功能,以及更多可讀比
[someObject setValue:someValue forKey:someKey];
難道KVC拿起任何的Objective-C的文字又名「現代的Objective-C」KVC與現代語法
我不知道,因爲這將是非常方便的,如果有一些短得多的功能,以及更多可讀比
[someObject setValue:someValue forKey:someKey];
也許和你一樣,我無法找到對
任何信息,但我覺得跟KVC問題下面的「現代的Objective-C」是編譯器不會有任何方法可以告訴你是否參考在超出範圍的變量,或者如果拼寫錯誤的東西。
所以我認爲KVC永遠有遵循標準的消息語法
對象申購接近KVC:
someObject[someKey]=someValue;
請注意,對象申購和KVC遵循不同的代碼路徑,因此它有可能這種行爲是不一樣的。但是,沒有什麼理由。
在這旁邊一個可能會懷疑,如果這是更清晰的語法:
object[@"a"]=object[@"b"]=object[@"c"];
發送消息的?
編譯器沒有(不能)檢查'someDict [aKey]'的有效性。 –
@JoshCaswell +1此外:具有相同信息(對象,鍵,值)的不同語法可以*總是*生成相同的代碼。人們可以想到'v [k] - > - >> object'。 –