首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSManagedObjectContext问题

NSManagedObjectContext问题
EN

Stack Overflow用户
提问于 2010-08-27 23:15:50
回答 1查看 347关注 0票数 0

我已经用"use coredata“选项设置了我的项目。

显然,XCode会自动为我设置所有这些内容,现在我在app委派头文件中有以下几行:

代码语言:javascript
复制
@interface GFree2AppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
    GFree2ViewController *viewController;
    UINavigationController *navController;

    NSManagedObjectContext *managedObjectContext_;
    NSManagedObjectModel *managedObjectModel_;
    NSPersistentStoreCoordinator *persistentStoreCoordinator_;
}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet GFree2ViewController *viewController;
@property (nonatomic, retain) IBOutlet UINavigationController *navController;

@property (nonatomic, retain, readonly) NSManagedObjectContext *managedObjectContext;
@property (nonatomic, retain, readonly) NSManagedObjectModel *managedObjectModel;
@property (nonatomic, retain, readonly) NSPersistentStoreCoordinator *persistentStoreCoordinator;

- (NSString *)applicationDocumentsDirectory;

@end

我的第一个问题是,为什么托管对象和其他对象的初始指针有下划线?这就是它们在.m文件中的用法,但是@property没有下划线。

我的下一个问题是,我想在我的脚本中进一步使用上下文,所以我使用了以下几行:

代码语言:javascript
复制
GFree2AppDelegate *delegate = [[UIApplication sharedApplication] delegate];
context = delegate.managedObjectContext;

这不会起作用,因为那里的obvs没有@synthesize。但是我需要合成什么呢?我是加下划线还是不加下划线,然后我得到它了吗?delegate.managedObjectContext还是delegate.managedObjectContext_?还是什么都不做?哈..。我不太确定我是否理解了所有这些托管对象的东西。

非常感谢。汤姆

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-28 21:01:25

下划线只是一种首选样式,如果需要,您可以使用它进行合成,也可以不使用它进行合成(但如果它与声明的属性不同,则应在属性声明中指定正确的名称,例如getter=managedObjectContext

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3585591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档