2013-05-10 58 views
1

我想创建一个NSObject类,我可以使用它的实例并保存到它的变量中,然后在其他地方传递它的数据(NSManagedObject)。除了创建一个从NSObject继承的新的Object-C类之外,我还需要做其他事情吗?在.h中创建变量并在.m中进行合成。iOS:保存到数据结构

即: 我.h文件中:

#import <Foundation/Foundation.h> 
@interface MyDataClass : NSObject 

@property (nonatomic, retain) NSNumber *variable1 
@property (nonatomic, retain) NSString *variable2 
@property (nonatomic, retain) NSDate *variable3 

@end 

.m文件:

#import "MyDataClass.h" 

@implementation MyDataClass 

@synthesize variable1, variable2, variable3 

@end 

我希望能够做一些SomeViewController如下:

@property (nonatomic, strong) MyDataClass *newDataClass 

@systhesize newDataClass; 


newDataClass.variable1 = @"123457890"; 
newDataClass.variable2 = @"This is the new Variable"; 
newDataClass.variable3 = [NSDate date]; 

当创建这个类的一个实例时,是否还需要做其他事情来初始化每个变量?我错过了什么?

+0

我不确定你想要做什么。你想创建一个自定义NSManagedObjectClass,你将用它来存储你的数据? – robbartoszewski 2013-05-10 00:40:34

回答

2

这就是您想要用于存储数据的自定义对象所需的全部内容。

当然,当你去使用它(在SomeViewController),您需要在开始设置变量之前实际创建类的实例:

self.newDataClass = [[MyDataClass alloc] init]; 

我也将使用self.newDataClass,而不是只是newDataClass除非你有理由不这样做。

+0

谢谢!最后一个问题,一旦我完成了这个实例并想删除/清除它,我应该只做newDataclass = NULL; ? – user1107173 2013-05-10 01:02:16

+1

与self.newDataClass相比直接使用综合属性newDataClass有什么优势? – powerj1984 2013-05-10 01:10:52

+1

其实我会更进一步,习惯于使用自动合成的下划线变量以及与“alloc”init同样的事情的“new”助手。 _newDataClass = [MyDataClass new]; – 2013-05-10 01:14:10