for语句中的奇怪行为(swift)

时间:2015-09-24 21:30:57

标签: swift for-loop compiler-warnings

我正在使用swift开发应用程序。今天我更新了我的Xcode(版本7),我得到了很多相同的警告。

问题在于for-statement

这里是代码:

    let dict:NSDictionary
    for dict in offers_to_show{

        //do something
    }
  • offers_to_show是一个NSArray,它只包含NSDictionary

我得到了"不变的价值' dict'从未使用过;考虑替换为' _'或删除它" 我该如何解决?

感谢您的支持, 的Mirco

2 个答案:

答案 0 :(得分:0)

当您命名绑定变量dict时,您将隐藏局部变量dict(您从未使用过它)。 Swift告诉你删除不必要的(和令人困惑的)let dict:NSDictionary行。

答案 1 :(得分:0)

  

我得到了"不变的价值' dict'从未使用

那是因为有两个dict变量:你在第一行创建的常量变量,以及for循环中的变量。正如the docs中所述,for-in循环中的索引变量是隐式声明的 - 您不需要自己声明它,因为您正在尝试使用{{1}并且,再次,这实际上是一个不同范围内的单独变量。

您没有使用第一个,因此编译器指出了这一点。代码中没有任何变化 - 编译器只是更好地找到了未使用的代码。