非常に単純なコードでメモリ リークの問題に直面しています。クラス 'TestClass' があります。
@interface TestClass : NSObject
@property(nonatomic,retain) NSString *name;
@end
その実装は次のようになります。
@implementation TestClass
@synthesize name;
-(id)init {
if (self = [super init]) {
self.name = @"";
}
return self;
}
-(void) dealloc
{
[name release];
name = nil;
}
@end
viewWillAppear 内に別のビュー コントローラーがあり、次のようにオブジェクトを作成してすぐに解放しています
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
for (int i =0; i<50; i++) {
TestClass *testClass = [[TestClass alloc] init] ;
[testClass release];
}
}
TestClass *testClass = [[TestClass alloc] init] ;
TestClass から init および dealloc メソッドを削除すると、メモリが存在しない場合に、リーク インストゥルメントがオンラインでメモリ リークを示します。
前もって感謝します。