使用变量时在 NSString 中的'Expression myExpression unused'



我有这种方法,我尝试在"_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]; 

你应该很好。

最新更新