gpt4 book ai didi

ios - 如果我正在创建完全自定义的 getter 和 setter 方法,我还需要 @property 声明吗?

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

所以我想在一个类上有一个“属性”,但我不想只将该属性保存在内存中,我想实际将其存储为 NSUserDefault 并在您获得该属性时检索它。

因此我有这样的方法:

- (void)setUser:(User *)user {
// actually set the user as an NSUserDefault here
}

- (User *)user {
// get the user from the NSUserDefaults and return it
}

当我构建这些方法来为我完成工作时,在头文件中声明 @property 有什么意义吗?

我收到的消息很复杂。有人说你应该声明属性以强制人们使用 getter/setter 方法,但我不明白为什么人们不会被迫使用这些方法,如果它们都是可用的?

只是想得到一些说明。

非常感谢。

最佳答案

您应该使用 @property,因为这是在 Objective-C 对象上定义属性的现代方式,即使您自己实现了 setter 和 getter。

您不是依赖约定,而是让编译器更清楚地了解您的意图。在 IDE 中使用点符号时,您还将获得更好的语法突出显示(尽管这可以说是 Xcode 错误)。

关于ios - 如果我正在创建完全自定义的 getter 和 setter 方法,我还需要 @property 声明吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16105681/

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