我創建了一個類來存儲一個數字。該數字通過一個接受int的方法傳入,然後將其保存在NSNumber *對象中。請看下圖:Objective-c返回null
- (IBAction)memoryPlus:(UIButton *)sender {
int result = [self.display.text intValue];
[self.memory memoryPlus:result];
}
結果總是得到正確的值,但是memoryPlus:結果返回null。當我在方法調用中放置斷點時,調試器不會輸入方法,而是移動到方法的末尾。
下面的Memory .m文件應該取結果的值並將其賦值給calculatorMemoryString,但這不會發生。
@interface CalculatorMemory()
@property(nonatomic,strong)NSString *calculatorMemoryString;
@end
@implementation CalculatorMemory
@synthesize calculatorMemoryString;
-(void)memoryPlus:(int)memoryValue{
calculatorMemoryString=[NSString stringWithFormat:@"%d",memoryValue];
}
-(NSString *)memoryRecall{
return calculatorMemoryString;
}
-(void)memoryClear{
NSLog(@"CalculatorMemory: memoryClear called");
}
@end
任何幫助表示讚賞!
顯示實例化類self.memory的代碼 – Aaron
瞭解如何調試 - 請!當你發現一個不好的值時,追溯它的來源。 –