ios - KVC 合规性 - 声明 iVar 的指南

标签 ios cocoa kvc

我见过 ivars 支持以 2 种通用格式声明的属性(在各种书籍、博客等中......):

myProperty = _myProperty;
myProperty = myProperty_; 

Apple 文档称 key value compliance 需要前一个。

哪一个最合适?

最佳答案

如果您正在创建一个属性,底层 ivar 的名称对 KVC 没有任何影响——它将通过访问器。仅当以下条件为真时,它才会访问实例变量:

  • 找不到该 key 的任何合适的访问器

  • 对象的类为accessInstanceVariablesDirectly返回YES

关于ios - KVC 合规性 - 声明 iVar 的指南,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9071332/

相关文章:

objective-c - 查看 Pages Mac OS X 应用程序使用的层次结构

ios - KVO 在单例属性(property)上?

objective-c - 为什么我不能使用从 Objective-C 对象到 Swift 属性的 KVC?

android - cakephp FFMPEG 库将 mov 文件转换为 mp4 for iphone to android 视频问题

ios - MKMapView。在移动中创建路径

objective-c - 防止 UIScrollView 将内容移动到左上角

objective-c - 如何以编程方式向 OS X 应用程序添加红绿灯按钮

macos - 在 OS X 中通过 perl 控制鼠标

ios - 使用 FMDB 将数据插入 SQLite 时,dispatch_async 上的 EXC_BAD_ACCESS

macos - NSTextField 在 Swift 中绑定(bind)为 double,如何允许空白?