最後に静的ライブラリとして出荷される客観的な C フレームワークを開発しています。しかし、そのライブラリを実際のアプリケーションに (静的ライブラリを追加することによって) リーク ツールに統合すると、いくつかのメモリ リークが存在することがわかります。
シナリオの例を次に示します。
@implementation Test
@synthesize testNumber
+(Test) createTestInstance {
Test *test = [[Test alloc] init];
test.testNumber = [[NSDecimerNumber alloc] initWithInt:1];
return test;
}
-(void) dealloc {
[testNumber release];
}
@end
dealloc で testNumber 変数を解放しても、Leaks ツールで alloc 位置でメモリ リークが発生します。ここで何が問題になる可能性がありますか?
また、これはユーザーが呼び出すために提供されるライブラリであるため、これらの変数をライブラリ コードから解放することはベスト プラクティスですか?
ありがとうございました