Swift - 如何声明私有(private)嵌套结构?

标签 swift struct nested private

我想让我的代码更具可读性,所以我决定制作一些重复的字典键,软编码...所以我创建了一个新的 .swift 文件,里面有 2 个结构:

struct DatabaseTableNames {
    let Photo = PhotoTable()
}

private struct PhotoTable {
    let lowQuality = "lowQuality"
    let highQuality = "highQuality"
    let numberOfLikes = "numberOfLikes"
}

所以我有我要使用的初始结构和第二个结构,我不希望它在文件范围之外可见......事情是,它说 Photo DatabaseTableNames 结构的属性,需要声明为 fileprivate 因为 PhotoTableprivate...

我在这里做错了什么?

最佳答案

关键是嵌套 PhotoTable 并使其属性静态化。

struct DatabaseTableNames {
    struct PhotoTable {
        static let lowQuality = "lowQuality"
        static let highQuality = "highQuality"
        static let numberOfLikes = "numberOfLikes"
    }
}

使用示例:

let test = DatabaseTableNames.PhotoTable.lowQuality
print(test)

关于Swift - 如何声明私有(private)嵌套结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41990222/

相关文章:

ios - 授予联系人权限后,Tableview 不会重新加载

ios - iOS 中 FileManager 的内容在哪里?

c++ - 通过属性问题初始化typedef struct

python - 迭代两个列表的列表理解没有按预期工作

java - 在 Java8 中的嵌套映射中搜索值

CSS 嵌套属性...至少我希望它是这么叫的

ios - 如何在 Swift 中遍历 NSMapTable 中的所有项目

ios - "Ambiguous use of subscript"新 Swift 更新后出错

c - C 中函数指针作为参数

c - 如何使用其他c源文件中的struct?