当你做出这样的声明时,差异是什么:
self.view.backgroundColor = UIColor.white
和此:
self.view.backgroundColor = .white
view.backgroundColor
调用类var .white或swift是否由于变量类型而忽略了UIColor?这些类型的陈述的惯例是什么?
答案 0 :(得分:1)
Swift可以从上下文中推断出类型。在该语句中,编译器知道self.view.backgroundColor
是UIColor
。当您调用类方法或属性.white
时,它会自动调用UIColor.white
。
惯例是使用第二种用法。它的篇幅更短,描述性更强,几乎每个人都能理解。
答案 1 :(得分:1)
只有可读性的差异。编译器将检查backgroundColor
所属的类型,并确定其为UIColor
,然后使用类型推断来获取UIColor.white
并分配它。
就标准惯例而言,许多人使用较短类型的传染,但很难确定存在哪些其他可能的值,尤其是在使用自定义类型时。我使用完全限定的变量,所以我的代码看起来像:
view.backgroundColor = UIColor.white
我相信它更具可读性。