iOS iVar名为"Size"语法错误?

Les*_*nel 2 iphone xcode objective-c ios

拿这个代码:

@interface SomeClass:NSObject
{
@private
  NSString* Size;
}

@property NSString* Size;

@end

--------------------------

@implementation SomeClass
@synthesize Size;

- (void) something
{
  Size = @"syntax error : Expected identifier or '(' ";
  self.Size = @"works ok";
}

@end
Run Code Online (Sandbox Code Playgroud)

为什么这是语法错误?"Size"是保留字还是已在NSSObject中定义?我在两个单独的项目上得到了错误......

Ang*_*qui 8

大小是一种类型:

typedef long                            Size;
Run Code Online (Sandbox Code Playgroud)

不要使用它,你应该遵循Objective-C约定,这些约定用lowerCase命名属性.