我在将对象添加到 NSMutableArray *array 时遇到问题。
// Controller.m
#import "Controller.h"
@implementation Controller
- (void)parser:(NSString *)string{
[array addObject:string];
NSLog(@"answerArray(1): %@",[array objectAtIndex:1]);
[array retain];
}
@end
// Controller.h
#import <Foundation/Foundation.h>
@interface Controller : NSObject {
NSMutableArray *array;
}
- (void)parser:(NSString *)string;
@end
NSLog(@"answerArray(1): %@",[array objectAtIndex:1]);
结果:answerArray(1):(空)
首先,您过度保留了数组。
其次,您没有提供初始化数组的代码,所以我猜它没有分配和初始化。这将导致代码向 nil 对象发送消息,从而返回 nil。
你应该创建一个init
方法为Controller
对象,并分配一个新的NSMutableArray
对象(并保留它)。
另外,适当的dealloc
释放数组。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)