And*_*w H -1 iphone core-data key-value-coding nsmanagedobject
对于以下代码,在下面两行之前的两个注释中,只有第一个有效.
NSManagedObject * Event = [NSEntityDescription insertNewObjectForEntityForName:str inManagedObjectContext:app.managedObjectContext];
//Work but strange
[Event setValue:[NSNumber numberWithInt:buf4[v+h]] forKey:value];
//Error
Event.value= [NSNumber numberWithInt:buf4[v+h]];
Run Code Online (Sandbox Code Playgroud)
第二次返回并出错
request for member 'value' in 'Event', which is of non-class type 'NSManagedObject*'
Run Code Online (Sandbox Code Playgroud)
在开始之前,重要的是要指出在Objective-C中编写代码时应遵循的约定.类名应以大写字母开头:Event,NSManagedObject,MKMapView.变量必须以小写字母开头:event,currentUser,myMapView.
现在,对你的问题. [Event setValue:foo forKey:value]和Event.value=foo(sic)不相同,除非变量值是包含字符串的NSString value.(即NSString *value = @"value")放得更清楚,foo.bar=baz相当于[foo setValue:baz forKey:@"bar"]没有[foo setValue:baz forKey:bar].
| 归档时间: |
|
| 查看次数: |
631 次 |
| 最近记录: |