我对目标 c 和制作应用程序非常陌生,并且不确定为什么这没有构建。这是我失败的代码:CalculatorViewController.m
#import "CalculatorViewController.h"
@interface CalculatorViewController ()
@end
@implementation CalculatorViewController
-(CalculatorBrain *)brain
{
if (!brain){
brain = [[CalculatorBrain alloc] init];
}
return brain;
}
-(IBAction)digitPressed:(UIButton *)sender;
{
NSString *digit = [[sender titleLabel] text];
if (userIsInTheMiddleOfTypingANumber){
[display setText:[[display text] stringByAppendingString:digit]];
} else{
[display setText:digit];
userIsInTheMiddleOfTypingANumber = YES;
}
}
-(IBAction)operationPressed:(UIButton *)sender;
{
if (userIsInTheMiddleOfTypingANumber){
[[self brain] setOperand:[[display text] doubleValue]];
userIsInTheMiddleOfTypingANumber = NO;
}
NSString *operation = [[sender titleLabel] text];
double result = [[self brain] performOperation:operation];
[display setText:[NSString stringWithFormat:@"%g", result]];
}
@end
和 CalculatorViewController.h
#import <UIKit/UIKit.h>
#import "CalculatorBrain.h"
@interface CalculatorViewController : UIViewController{
IBOutlet UILabel *display;
CalculatorBrain *brain;
BOOL userIsInTheMiddleOfTypingANumber;
}
-(IBAction)digitPressed:(UIButton *)sender;
-(IBAction)operationPressed:(UIButton *)sender;
@end
double result = [[self brain] performOperation:operation];
在 CalculatorViewController.m 的最后,我收到错误 Initializing 'double' with an expression of in compatible type 'void' 这是什么意思,或者我应该在哪里解决这个问题?