gpt4 book ai didi

enums - swift 中的 typedef 枚举

转载 作者:IT王子 更新时间:2023-10-29 05:16:30 30 4
gpt4 key购买 nike

我正在用 Swift 重写我的 Objective C 应用程序,我有一个关于枚举的问题。在 Objective C 中你会这样做;

typedef enum {
stopped,
running
} TimerState;

返回错误,一行中的连续声明必须用‘;’分隔——预期声明——枚举声明中的预期标识符。我阅读了一些关于此的文档,发现您不再将 typedef 放在枚举之前。所以很快我认为它会是:

enum {
stopped,
running
} TimerState;

但我不知道如何处理 TimerState,它是否放在花括号内?我该怎么办。请不要发表任何聪明的评论。提前致谢。

最佳答案

这不是你在 Swift 中声明枚举的方式。您不能像在 C 中那样简单地列出值。可以使用以下技术在 C 中完成枚举。

enum TimerState {
stopped,
running
};

在 swift 中,你必须使用 case 关键字。

enum TimerState {
case stopped
case running
}

关于typedef,swift中有typealias

typealias SomeNewEnum = TimerState

编辑:如果您想为您的枚举分配一个原始类型,您可以这样做。

enum TimerState: Int {
case stopped = 0
case running // 1
}

关于enums - swift 中的 typedef 枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24147240/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com