私は現在objective-cを学んでおり、現在NSTableViewでトレーニングしています。
ここに私の問題があります:
データソースを持つように、Interface Builder を介してテーブルビューをコントローラーにリンクし、コントローラーに NSTableViewDataSource プロトコルを実装し、-(NSInteger) numberOfRowsInTableView:
と-(id) tableView:objectValueForTableColumn:row:
メソッドの両方を実装しました。
生のビジネス クラス (「人」) を作成し、そのコンテンツを NSTableView に表示することに成功しました。
しかしNSLog
、メモリが解放されたかどうかを確認するために、dealloc メソッドにいくつか入れましたが、配列と「個人」インスタンスが解放されないようです。
ここにコントローラーの私のdeallocコードがあります:
-(void)dealloc
{
NSLog(@"the array is about to be deleted. current retain : %d",[personnes retainCount]);
[personnes release];
[super dealloc];
}
そして私の「人」クラスで
-(void) dealloc
{
NSLog(@"%@ is about to be deleted. current retain : %d",[self prenom],[self retainCount]);
[self->nom release];
[self->prenom release];
[super dealloc];
}
これらの解放は、アプリケーションのライフサイクルでいつ呼び出されることになっていますか? 窓が閉まるときに呼び出されると思っていたのですが、そうではありませんでした。
十分に明確であることを願って、
ありがとう :)
凧。