我有一个用户输入变量,我想将其添加到数组中。 firstStore是BOOL类型,用于确定数组是否已初始化。所以第一次调用STORE时,它会初始化数组。我试图通过屏蔽它NSNumber使num等于操作数(这是一个双倍),但这似乎不起作用,因为我有这个错误“NSNumber可能不响应+操作数”,程序崩溃时,它击中了line [memArray addObject:num]。我是新手,所以任何帮助都会非常感激。
else if ([operation isEqual:@"Store"]) {
if(!firstStore){
memArray = [[NSMutableArray alloc] init];
NSNumber *num = [NSNumber operand];
[memArray addObject:num];
firstStore = YES;
} else {
//NSNumber *num = [NSNumber operand];
//[memArray addObject:num];
}
}
答案 0 :(得分:3)
尝试将[NSNumber operand]
更改为[NSNumber numberWithDouble:operand]
。
答案 1 :(得分:2)
"NSNumber may not respond to +operand"
表示内容:没有这样的类方法operand
。该怎么办?
如果初始化memArray
,您不需要bool来跟踪。使用方法:
if(!memArray)
或
if (memArray == nil)