gpt4 book ai didi

ios - 关于 iOS6+ 中的@synthesize

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:08:12 25 4
gpt4 key购买 nike

例如:

//Myclass.h
@property(nonatomic, strong) NSString *name;

//MyClass.m
//@synthesize name = _name

所以我知道在 iOS6+ 中我们不再需要使用 @synthesize 了。编译器自动为我创建 getter 和 setter。

  1. 但我不明白什么时候使用self.name = @"Testing" 什么时候使用_name = @"Testing"

  2. 应该使用 _name = @"Testing" 吗?

  3. 如果是,什么时候?什么时候应该使用 iVAR?

  4. 此外,如果我想编写自己的 getter 和 setter,我需要编写 @synthesize 还是可以只编写我的 getter 和 setter?

感谢您的帮助!

最佳答案

通常,您只在 init 方法、getter 和 setter 以及 dealloc 中使用实例变量。当然也有异常(exception),但这是一个很好的经验法则。

如果您同时编写了您自己的 getter setter(或者在只读属性的情况下您编写了 getter),您必须自己合成您的属性。在所有其他情况下,该属性是自动合成的。

关于ios - 关于 iOS6+ 中的@synthesize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19341941/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com