私が今持っていますと、メモリリークの問題、メモリ管理は
@interface ClassA: NSObject <DelegateA>
-(id)initWithData:(NSData*)data;
+(Stores*)makeClass:(Class) name fromData:(NSData*)data;
@property (assign) NSMutableArray *arr;
@property (assign) RXMLElement *rxmlRoot;
@end
classA.m
-(id)initWithData:(NSData*)data {
self = [super init];
if (self) {
arr = [[NSMutableArray array] retain];
rxmlRoot = [[RXMLElement elementFromXMLData:data] retain];
}
[rxmlRoot iterate:node with:^(RXMLElement *e){ <--------get warning at here
NSLog(@"element is %@",e.tag);
Detail *detail = [[[Detail alloc] init] autorelease];
[detail setLat: [e attribute:@"lat"]];
[detail setLon: [e attribute:@"lon"]];
[arr addObject:detail];
}];
return self;
}
+(classA*)makeClass:(Class) name fromData:(NSData*)data{
ClassA *classA = [[ClassA alloc] initWithData:data];
return [storeClass autorelease] ;
}
とRaptureXML.m
classA.hです
+ (id)elementFromXMLData:(NSData *)data { return [[[RXMLElement alloc] initFromXMLData:data] autorelease]; } - (id)initFromXMLData:(NSData *)data { if ((self = [super init])) { xml_ = [[TBXML alloc] initWithXMLData:data]; tbxmlElement_ = xml_.rootXMLElement; } return self; }
警告:(「自己」を介して)インスタンス変数のアクセスヌルポインタ参照の結果は
質問:なぜ私はこの警告を取得し、どのようにこの問題を解決することになっています。 アドバイスをお願いします。おかげ
はクラスA *クラスA = [[クラスAのALLOC] initWithData:データ]における第一および第三のクラスAです。それはタイプミスであるため小文字ですか? – fsaint
ありがとう。私はちょうど – tranvutuan