ios - 初始化期间存储到 'currentRange' 的值永远不会被读取?

标签 ios objective-c xcode nsrange

在分析我的项目后,我似乎收到以下警告:

Value stored to 'currentWordRange' during its initialization is never read

对于 viewDidLoad 中的以下几行:

if (self.wordToAdd && self.wordToAdd != (id)[NSNull null] && self.wordToAdd.length != 0 ) {
    NSRange currentWordRange = NSMakeRange(0, 0);
            currentWordRange = [checker rangeOfMisspelledWordInString:self.wordToAdd range:NSMakeRange(0, self.wordToAdd.length) startingAt:0 wrap:NO language:@"en_US"];
}

是我没有正确创建 NSRange 吗?

最佳答案

不,不是那样的。在使用范围之前,您不需要在范围上调用 NSMakeRange。它是标量类型,而不是对象。

您正在用 0,0 初始化一个范围,稍后用一个新值替换它,然后一旦您的代码离开 if 语句的大括号就忘记了范围值。

您的代码不会失败或出现任何问题,但会忽略 currentWordRange 的值。这就像写了一封信,然后没有邮寄就把它扔掉了。无害的时间浪费。

关于ios - 初始化期间存储到 'currentRange' 的值永远不会被读取?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27453919/

相关文章:

iphone - 在设备中测试时 SLComposeViewController 崩溃

android - 如何使用 Google Play 服务 C++ 实现前 10 名排行榜

iphone - Objective-c 调用 C 函数

ios - Xcode 6 中缺少基本 SDK

swift - UIViewControllerPreviewing peek 不显示我的预览

ios - Firebase 错误地显示已删除的数据/Swift 3/Xcode 8.2

ios - swift - 错误 'Expected ' ,' separator' 和 'Expected expression in list of expressions'

ios - iOS中的主线程实现

ios - 如何找出iphone应用程序是否被杀死并重新启动?

mysql - 如何在 iOS 应用程序中存储/使用完整的英语词典?