Objective c iOS5 SDK-ARC和内存管理
Q) 是否要求所有接口类都从超类继承? Q) 在下面的代码中-从iOS5开始使用ARC时我还需要做什么(玩家是NSMUtable数组),除非我错了,我相信ARC之后我们不需要保持ref计数: //那么这是必需的吗? Player*Player=[[Player alloc]init]Objective c iOS5 SDK-ARC和内存管理,objective-c,ios5,Objective C,Ios5,Q) 是否要求所有接口类都从超类继承? Q) 在下面的代码中-从iOS5开始使用ARC时我还需要做什么(玩家是NSMUtable数组),除非我错了,我相信ARC之后我们不需要保持ref计数: //那么这是必需的吗? Player*Player=[[Player alloc]init] {players = [NSMutableArray arrayWithCapacity:20]; Player *player = [[Player alloc] init]; player.name = @"B
{players = [NSMutableArray arrayWithCapacity:20];
Player *player = [[Player alloc] init];
player.name = @"Bill Evans";
player.game = @"Tic-Tac-Toe";
player.rating = 4;
[players addObject:player];
player = [[Player alloc] init];
player.name = @"Oscar Peterson";
player.game = @"Spin the Bottle";
player.rating = 5;
[players addObject:player];
player = [[Player alloc] init];
player.name = @"Dave Brubeck";
player.game = @"Texas Hold’em Poker";
player.rating = 2;
[players addObject:player];}
Q) 关于使接口文件和实现文件子类成为对象类的规则是什么,即在java中,所有内容都是从对象类派生的,那么我们是为实现OTN/接口类声明NSObject,还是不需要声明NSObject?我将在哪里定义它
Q) 哪一个是推荐的解决方案
A:Player*Player=[[Player alloc]init];
或
B:Player*Player=[[Player new];//除非这是非法的
Q) ARC是否仅在Mac OS X应用程序或iOS(如iphone/touch等)上可用,或者我们仍然需要手动内存管理
Q) singleton模式可以应用于Objective-c、cocoa touch iphone应用程序吗?- 您必须执行
来实例化对象[[Player alloc]init]
- 始终从
派生类,除非您特别想从其他类派生NSObject
等同于[[Player alloc]init]
,但前者是首选,因为您可以轻松地交换另一个初始值设定项,例如[Player new]
[[Player alloc]initWithName:@“John Doe”]
- ARC在iOS和Mac上都可用,应该在Mac上使用它,而不是垃圾收集,这在某种程度上被弃用
- 我不明白为什么你不能在iOS上创建单例
- 您必须执行
来实例化对象[[Player alloc]init]
- 始终从
派生类,除非您特别想从其他类派生NSObject
等同于[[Player alloc]init]
,但前者是首选,因为您可以轻松地交换另一个初始值设定项,例如[Player new]
[[Player alloc]initWithName:@“John Doe”]
- ARC在iOS和Mac上都可用,应该在Mac上使用它,而不是垃圾收集,这在某种程度上被弃用
- 我不明白为什么你不能在iOS上创建单例