Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/95.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 为什么属性在没有合成的情况下仍然有效?_Ios_Objective C_Properties - Fatal编程技术网

Ios 为什么属性在没有合成的情况下仍然有效?

Ios 为什么属性在没有合成的情况下仍然有效?,ios,objective-c,properties,Ios,Objective C,Properties,我有一本书 @property (nonatomic) NSString *yourMom; 然后在 不! 在viewdidload中直接访问: _yourMom = @"Sally"; 这不需要合成就可以工作。为什么?Objective-C@属性在未显式实现时默认情况下合成。 除非另行指定,否则合成的实例变量与属性具有相同的名称,但带有下划线前缀。例如,对于名为firstName的属性,合成的实例变量将被称为_firstName 请阅读苹果公司的这篇文章。它包含您所需的全面信息。\u您的妈

我有一本书

@property (nonatomic) NSString *yourMom;
然后在

不! 在viewdidload中直接访问:

_yourMom = @"Sally";
这不需要合成就可以工作。为什么?

Objective-C@属性在未显式实现时默认情况下合成。 除非另行指定,否则合成的实例变量与属性具有相同的名称,但带有下划线前缀。例如,对于名为firstName的属性,合成的实例变量将被称为_firstName


请阅读苹果公司的这篇文章。它包含您所需的全面信息。

\u您的妈妈
由编译器自动合成,但您可以根据需要自定义它。所以它是自动合成的。很高兴知道谢谢TJ3可能的重复虽然此链接可以回答问题,但最好在此处包含答案的基本部分,并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能无效。-@谢谢你的推荐。我刚刚编辑了我的答案:)@martinlee质疑评论这种答案不要单独更新答案。