调用本地例程时收到此警告。

我的代码是这样的:

-(void)nextLetter {
    // NSLog(@"%s", __FUNCTION__);
    currentLetter ++;
    if(currentLetter > (letters.count - 1))
    {
        currentLetter = 0;
    }
    self.fetchLetter;
}

我在self.fetchLetter语句上收到警告。

该例程如下所示:
- (void)fetchLetter {
    // NSLog(@"%s", __FUNCTION__);
    NSString *wantedLetter = [[letters objectAtIndex: currentLetter] objectForKey: @"langLetter"];

    NSString *wantedUpperCase = [[letters objectAtIndex: currentLetter] objectForKey: @"upperCase"];


.....
}

我更喜欢修正警告消息,是否有更好的方式编写此消息?

谢谢!

最佳答案

点表示法(即self.fetchLetter)用于属性,而不用于任意方法。 self.fetchLetter被解释为“获取'self'的'fetchLetter'属性”,这不是您想要的。

只需使用[self fetchLetter]即可。

关于objective-c - Xcode警告 “Property access results unused - getters should not be used for side effects”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5346682/

10-12 05:41