在Swift中创建私有(private)常量时,可以在一个类中声明它们,

final class SomeClass: NSObject {

    private let someFloat:CGFloat = 12
}

以及类之外。
private let someFloat:CGFloat = 12

final class SomeClass: NSObject {  }

在类之外时,范围是在其中创建常量的文件。使用一种方法与另一种方法是否还有其他区别,并且有人对最佳做法有意见吗?

最佳答案

他们的访问方式有所不同。

在第一种情况下,someFloatSomeClass的范围内。可通过SomeClass.someFloat访问。

在第二种情况下,someFloat在模块范围内。可以通过someFloat进行访问。

第一种方法是优选的。通常很难在模块 namespace 中找到标识符,因为标准库或基金会/ cocoa 框架中的所有标识符都容易淹没它们。

09-25 21:25