我使用NSUSerDefaults来存储用户偏好.我记得在某个地方读到,将键设置为常量是个好主意——我同意.以下代码是我目前拥有的:
[[NSUserDefaults standardUserDefaults]
setObject:[NSNumber numberWithInt:polygon.numberOfSides]
forKey:@"polygonNumberOfSides"];
我试着把它改成:
@implementation Controller
NSString const *kPolygonNumberOfSides = @"polygonNumberOfSides";
-(void)savePolygonInfo {
[[NSUserDefaults standardUserDefaults]
setObject:[NSNumber numberWithInt:polygon.numberOfSides]
forKey:kPolygonNumberOfSides];
}
虽然这确实有效,但它会产生"warning: passing argument 1 of 'objectForKey:' discards qualifiers from pointer target type
".我希望我的代码不受编译器警告的影响.如何修复此警告?