本文介绍了为什么我不需要一个ivar这个Core Data属性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这里的源代码是什么,所以我不需要声明managedObjectContext作为一个ivar? __ managedObjectContext 在哪里存在?具有双下划线前缀的是什么?

What is the sourcery going on here that makes it so I don't need to declare managedObjectContext as an ivar?? Where does __managedObjectContext exist? What is with the double-underscore prefix?

标题

@interface CAHistoryController : NSObject {}

@property (nonatomic, retain, readonly) NSManagedObjectContext *managedObjectContext;

@end

实施

@implementation EBHistoryController

@synthesize managedObjectContext=__managedObjectContext;
- (NSManagedObjectContext *)managedObjectContext
{
  if (__managedObjectContext != nil)
  {
    return __managedObjectContext;
  }
  // ...etc
}


推荐答案

@synthesize增加了在相对最新的编译器版本中自动合成关联存储的能力(实际上,不是最近的,虽然模拟器最初不支持这种模式)。

@synthesize grew the ability to automatically synthesize the associated storage in a relatively recent compiler release (actually, not so recent though the simulator initially didn't support this pattern).

这篇关于为什么我不需要一个ivar这个Core Data属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-22 19:21