jjzjj

setNilValueForKey

全部标签

ios - NSUserDefaults setObject :nil vs. setNilValueForKey

每当我尝试以下行时,我的应用程序就会崩溃:[[NSUserDefaultsstandardUserDefaults]setNilValueForKey:@"my_key"];出现此错误:'NSInvalidArgumentException',reason:'[setNilValueForKey]:couldnotsetnilasthevalueforthekeymy_key.'但是当我这样做时它似乎起作用了:[[NSUserDefaultsstandardUserDefaults]setObject:nilforKey:@"my_key"];有人可以解释这两个函数之间的区别吗?

objective-c - KVC setNilValueForKey : recommends calling method and not using property accessor

KVCDocumentation说Thekey-valuecodingmethodsetNilValueForKey:methodiscalledwhenyouattempttosetanattributetonil.目前还不错...usessetValue:forKey:tosetthenewvalue.Thismaintainsencapsulationofthemodelandensuresthatanyadditionalactionsthatshouldoccurasaresultofsettingthevaluewillactuallyoccur.Thisisconside