在属性名称之前的下划线,在setter中

时间:2013-03-06 18:32:14

标签: ios objective-c cocoa synthesize

我写了一个setter方法 -

- (void)setMyProp:(MyProp *)myProp{
    _myProp = myProp;
}

在属性名称工作之前如何放置下划线? 我知道这个问题已被提出,但它们是关于用户设置属性名称为_myProp,一些约定。我没有合成或更改属性名称。这个下划线是如何工作的?

1 个答案:

答案 0 :(得分:1)

如果您使用的是最新版本的LLVM,则编译器会使用以下语法为您创建@synthesize:

@synthesize myProp=_myProp;

因此,即使您没有明确合成,也可以使用_myprop。

<击> * SideNote:_myProp可让您直接访问该属性,而self.myProp则会调用访问者。始终使用self.myProp