我正在使用最新的 SDK 和 XCode 4.2 开发 iOs 4 应用程序
我有一个关于 NSString 参数的问题。这是我的类定义:
#import <Foundation/Foundation.h>
@interface BlogEntry : NSObject
{
NSString* title;
NSString* text;
NSDate* date;
NSString* photo;
}
- (id)initWithTitle:(NSString*)titulo text:(NSString*)texto date:(NSDate*)fecha photo:(NSString*)foto;
@end
和实施:
#import "BlogEntry.h"
@implementation BlogEntry
- (id)initWithTitle:(NSString*)titulo text:(NSString*)texto date:(NSDate*)fecha photo:(NSString*)foto
{
if (self = [super init])
{
title = titulo;
text = texto;
date = fecha;
photo = foto;
}
return self;
}
@end
我是否需要保留initWithTitle
参数?或者,我可以复制它们吗?
如果是 ARC,则不会。非 ARC 的,是的。
For the NSString
伊瓦尔,通常copy
。为了NSDate
ivar, retain
。的原因copy
with NSString
如果是NSMutableString
是在你的init
方法。复制参数可以防止它被您的类改变。因此,它确保了封装。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)