2011-07-26 49 views
1

在這裏做的源代碼是什麼,所以我不需要聲明managedObjectContext作爲ivar? __managedObjectContext在哪裏?什麼是雙下劃線前綴?爲什麼我不需要這個Core Data屬性的ivar?

頁眉

@interface CAHistoryController : NSObject {} 

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

@end 

實施

@implementation EBHistoryController 

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

回答

2

@synthesize增長到自動合成相關的存儲在一個相對較新的編譯器版本(其實,沒有那麼近,雖然模擬器最初沒有能力支持這種模式)。

0

@synthesize without the = <somename> part會生成一個與屬性名稱相同的ivar。當你這樣做= <somename>,你告訴它做一個不同的名字伊娃。

相關問題