クラス内共通のNSStringを作る場合は、ヘッダファイルでretainのプロパティ宣言をした上で
@systhesize、dealloc等で解放をコーディングした上で、以下の記載で設定するようです。
これでメモリーリークが無くなりました。他にいい方法があるのかなぁ。
しかし、こんなことをしなくても、簡単にセットする方法を提供してほしい・・・・
-------*.h------------
@interface xxxxViewController : UIViewController {
NSString *Reg1;
}
@property (nonatomic, retain) NSString *Reg1;
@end
-------*.m------------
@implementation xxxxViewController
@synthesize Reg1;
- (void) setReg1:(NSString *)value{
if (Reg1 != value) {
[Reg1 release];
Reg1 = [[NSString alloc] initWithString:value];
}
}
- (void)viewDidUnload {
self.Reg1 = nil;
}
- (void)dealloc {
[Reg1 release];
}
--------------
呼び出し方:
[self setReg1:string];
0 件のコメント:
コメントを投稿