通过尽可能多地定义常量而不是变量,Swift有没有增益?

时间:2014-07-09 09:21:29

标签: variables swift constants var let

通过定义尽可能多的常数x变量,在Swift中,速度,内存使用等方面是否有任何增益?

我的意思是,尽可能使用let而不是var进行定义?

1 个答案:

答案 0 :(得分:11)

理论上,速度或内存使用应该没有区别 - 在内部,变量的工作方式相同。在实践中,让编译器知道某些东西是常量可能会导致更好的优化。

然而,最重要的原因是使用常量(或不可变对象)有助于防止程序员错误。默认情况下,方法参数和迭代器是常量不是偶然的。

使用不可变对象在多线程应用程序中也非常有用,因为它们可以防止出现一种类型的同步问题。