xcode – 在Swift中具有内部原始值的公共枚举

前端之家收集整理的这篇文章主要介绍了xcode – 在Swift中具有内部原始值的公共枚举前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想用一个内部String原始值创建一个带有公共枚举(由其他模块使用)的类(我不希望其他模块读取原始值,但我想在同一模块内部读取它) ).

我知道我可以创建另一个接收枚举的私有函数并返回一个String,但我想避免这种情况.

解决方法

我认为这是不可能的,我试着先这样做:

public enum Emotion {
    case Hate = EmotionInner.Hate,Love = EmotionInner.Love
}
internal enum EmotionInner: String {
    case Hate = "hate",Love = "love"
}

但它不会编译.
你的枚举至少应该是相同的类型 – 所以如果你想拥有rawValue(),它将在两个枚举中都有它.并且你不能使rawValue()像最终或静态一样.

顺便说一下,也许为它制作一个功能并不是坏事?

猜你在找的Xcode相关文章