【问题标题】:private vs. fileprivate on declaring global variables/consts in Swift3?private 与 fileprivate 在 Swift 3 中声明全局变量/常量?
【发布时间】:2016-09-28 06:41:15
【问题描述】:

我应该使用 private 还是 fileprivate 在 Swift 3 中声明全局变量/常量? 例如

fileprivate let a = 1
fileprivate class SomeClass {
    fileprivate b = 0
}

或者

private let a = 1
private class someClass {
    fileprivate b = 0
}

【问题讨论】:

标签: ios swift global-variables swift3


【解决方案1】:

在文件级别确实没有区别,无论您使用private还是fileprivate,访问控制都是一样的,例如以这种方式定义的常量将仅在该文件中可用。

其他修饰符也可以这样说,在某些情况下,内部和私有变得相同,例如。相同的单个文件模块。

对于这种情况下的所有意图和目的,您应该使用fileprivate,因为它更清楚地说明了意图 -> 您想在整个文件中使用它。

在 swift 的未来版本中(在 swift 4 中有一些建议的更改),这些修饰符确实会发生变化,并且fileprivateprivate 在这种情况下会有不同的范围是很合理的.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多