objective-c - 调试是唯一在 Objective C 程序中使用 iVars 有意义的情况吗?

标签 objective-c ios macos

在我开发的最初几天,我开始总是在我编写的每个程序中创建实例变量。但是在了解了属性的强大功能之后,我觉得我们不需要使用 iVars。

但有时当我不得不调试代码时,我发现由于缺少 iVar 而难以调试自定义实体的值。

现在我计划在所有自定义接口(interface)实现上使用 iVar。

请确认我一直在做的事情是否是一个好的做法,是否有取舍?

还有什么其他原因需要我们在 Objective C 中使用 iVars 吗?

最佳答案

您并不是通过使用属性(大部分时间)来“不使用”iVar。您只是让编译器为您生成它们。我经常将私有(private)和 protected iVar 用于我不想暴露给外部不相关类的东西(标志等)。属性只是 iVars 加上已定义的 getter(可能还有 setter)。我不明白您认为通过避免显式 iVar 可以获得什么。

关于objective-c - 调试是唯一在 Objective C 程序中使用 iVars 有意义的情况吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10977131/

相关文章:

ios - 无法修复 Objective-C ARC 多线程 iOS 应用程序中的特定内存泄漏

Mac OSX 上的 Java - 检测程序是否全屏

macos - 如何在 Mac 上运行 Mstests?

iOS 设备音频输出枚举

iphone - UIDatePicker 仅显示年份

ios - 在 iOS 中,如何在原生应用中打开 YouTube 用户或 channel (不是视频)?

ios - 将NSString转换回NSDate

linux - 如何使用每个 screen 的自定义命令启动多个 screen ?

简单窗口中的 Objective-C 日历。如何?

iphone - 为什么将 `&`(& 符号)放在某些方法参数的前面?