您可以在SWIFT中继承枚举吗?关于枚举继承,应该注意哪些规则?

以下测试代码:

enum TemperatureUnit: Int {
    case Kelvin, Celcius, Farenheit
}

enum TemperatureSubunit : Temperature {  
}

生成

error: type 'TemperatureSubunit' does not conform to protocol 'RawRepresentable'

推荐答案

在SWIFT语言中,我们有Structs、Enum和Class.Strt和Enum通过复制传递,但类通过引用传递.只有类支持继承,Enum和Struct不支持.

因此,为了回答您的问题,您不能使用枚举(和 struct 类型)进行继承.看看这里:

stackOverflow difference classes vs structs

Ios相关问答推荐

从后台线程调用DispatchObject的方法安全吗?

如何让3张组合的`SF Symbol`图片围绕一个特定点旋转?

为什么EKEventStore().questFullAccessToEvents()可以与模拟器一起使用,而不能与真实设备一起使用?

NSHashTable要求任何MyCustomProtocolAnyObject都是类类型

如何在@AppStorage中存储字体?

iOS 16 中的状态栏 colored颜色

如何让替换视图淡入旧视图而不是交叉淡入淡出?

转换在 NavigationView 中不起作用

如何为视图的 colored颜色 和宽度设置动画?

带有属性包装器的不可用属性

将flutter android项目导入iOS

实现一个将块用作回调的方法

NSFetchedResultsController 由字符串的第一个字母创建的部分

Xcode intellisense 彩色框中字母的含义,如 f、T、C、M、P、C、K、# 等

当键盘出现在 iOS 中时,将 UIView 上移

判断可选数组是否为空

将自定义对象保存到 NSUserDefaults

如何删除 Swift 数组中的所有 nil 元素?

openURL:在 iOS 10 中已弃用

如何创建 Select 器数组