我有这种方法,我尝试在"_result"中设置结果。如果我使用格式化字符串将其分配给"_result",它会给我错误"表达式结果未使用"。如果我使用纯字符串作为@"done",并且NSlog正确打印该字符串给我带来了问题,则错误不会显示。任何建议如何解决此问题?谢谢!
@property (nonatomic) NSString * result;
@synthesize result = _result;
- (NSString *) _result
{
if (!_result) {
_result= [[NSString alloc] initWithFormat:@"Could not compare %e"];
}
return _result;
}
- (NSString *) comparePrice:(double) price_one to_price2:(double) price_two;
{
if (price_one > price_two) {
NSLog(@"LOG result is %e ",price_one);
_result = @"result is %e ",price_one;
_result = @" done";
}
return _result;
}
您的错误在此行:
_result = @"result is %e ",price_one;
编译器不知道如何处理"price_one
"位。 您需要指示编译器您正在尝试使用格式字符串。
将该行代码更改为:
_result = [NSString stringWithFormat: @"result is %e ",price_one];
你应该很好。