Swift 为什么会有这样一句警告语;不可变值…“;?

Swift 为什么会有这样一句警告语;不可变值…“;?,swift,dictionary,warnings,Swift,Dictionary,Warnings,当我用Swift运行我的程序时,我一直收到一条警告,说在Xcode中“从未使用过不可变值'key',特别是在我的for循环中,它打印出字典中的所有值。我在网上搜索了其他方法,在没有得到警告的情况下打印出来,但我没有找到任何东西 以下是程序中出现警告的部分。它位于(键、值)的 我以前见过有很多警告的代码,但是程序员们似乎对这些警告很满意。我应该忽略这个问题吗?如果你不打算使用键,你可以用替换键,使警告静音 所以看起来是这样的: var dict=[String:[String]]() dict[“

当我用Swift运行我的程序时,我一直收到一条警告,说在Xcode中“从未使用过不可变值'key',特别是在我的for循环中,它打印出字典中的所有值。我在网上搜索了其他方法,在没有得到警告的情况下打印出来,但我没有找到任何东西

以下是程序中出现警告的部分。它位于(键、值)的


我以前见过有很多警告的代码,但是程序员们似乎对这些警告很满意。我应该忽略这个问题吗?

如果你不打算使用
,你可以用
替换
,使警告静音

所以看起来是这样的:

var dict=[String:[String]]()
dict[“key1”]=[“Bruh”,“Bruhh”,“Bruhh”,“Bruhh”]
dict[“key1”]!。附加(!)
对于dict中的(_,值)
{
打印(“\(值)”)
}
打印(“\n”)
这也适用于Swift的其他地方:

func示例()->Int{
返回1
}
设a=example()//从未使用不可变值“a”的初始化
让=示例()//无警告

哦,我明白了。因此,此警告仅在您没有实际使用
?时显示。确切地说:)所以Xcode的意思是您定义了这个变量,
,但您从未实际使用过它,这使得它的定义毫无用处。但是
\uu
告诉编译器您不打算使用它,“但是程序员似乎对它们很在行。”这不好。编译器/语言编写者不只是实现代码警告,因为它们编写起来非常有趣。@Alexander,哈哈,这很有道理。在任何情况下保留它们都是可以的吗?我忽略依赖项(如第三方库)中的警告。我不会浪费时间修复它们,只会让将来升级它们的版本更加困难,并引入bug的可能性。但除此之外,我喜欢将警告视为错误。没有警告的坏代码是可能的,但我不相信有警告的好代码是可能的(特别是因为它们通常是非常明显的事情,例如,当你没有变异
var
时,使用
let
)example@Alexander-哦,我明白了。所以我想这意味着我将从现在开始修正我所有的警告,我以前忽略了这么做,因为我认为这是不必要的。谢谢。嗯,这不是必要的,这就是警告和错误的区别。有错误的程序是不可编译的、无效的,编译器无法将其保存到正在运行的程序中。有警告的程序从杂乱无章到毫无意义,但编译器很乐意给你一根绳子来吊死自己。这不是“必要的”修复它们,但也不需要很好地缩进代码、编写测试、评测性能、使用良好的设计/架构。你完全可以随意制造混乱,但最终你要为此付出代价
var dict = [String : [String]]()
dict["key1"] = ["Bruh", "Bruhh", "Bruhhh", "Bruhhhh"]
dict["key1"]!.append("!")
for (key,value) in dict
{
    print("\(value)")
}
print("\n")