iOS-这是枚举的任务吗?
如果我想实现以下代码,枚举是否合适?我查了一些关于枚举的问题,但我还是有点不确定iOS-这是枚举的任务吗?,ios,enums,initialization,Ios,Enums,Initialization,如果我想实现以下代码,枚举是否合适?我查了一些关于枚举的问题,但我还是有点不确定 if (dayOfWeek == Monday) { // Do something } else if (dayOfWeek == Tuesday || dayOfWeek == Wednesday) { // Do something else } 如果这似乎是正确的,我将如何初始化枚举?它会放在头文件或实现文件中吗?是的,这对枚举非常有用,请查看此SO帖子以了解枚举的构造: 此外,您还可以
if (dayOfWeek == Monday)
{
// Do something
}
else if (dayOfWeek == Tuesday || dayOfWeek == Wednesday)
{
// Do something else
}
如果这似乎是正确的,我将如何初始化枚举?它会放在头文件或实现文件中吗?是的,这对枚举非常有用,请查看此SO帖子以了解枚举的构造: 此外,您还可以决定是否将枚举实现放在正在处理的类或头文件中 如果我想实现以下代码,枚举是否合适 没有太详细的备选方案——是的 如何初始化枚举 我通常在C中声明一个枚举,如下所示:
typedef enum MONDayOfWeek {
MONDayOfWeek_Undefined = 0,
MONDayOfWeek_Monday,
MONDayOfWeek_Tuesday,
MONDayOfWeek_Wednesday,
MONDayOfWeek_Thursday,
MONDayOfWeek_Friday,
MONDayOfWeek_Saturday,
MONDayOfWeek_Sunday
} MONDayOfWeek;
// in use:
MONDayOfWeek day = MONDayOfWeek_Monday;
MON
将是您的库或组织的前缀DayOfWeek
将是库中的枚举名称,然后附加值
虽然这很冗长,但你倾向于很好地避免碰撞
它会放在头文件还是实现文件中
在标题中,如果希望多个文件使用它,请在实现文件中使用else
typedef enum MONDayOfWeek {
MONDayOfWeek_Undefined = 0,
MONDayOfWeek_Monday,
MONDayOfWeek_Tuesday,
MONDayOfWeek_Wednesday,
MONDayOfWeek_Thursday,
MONDayOfWeek_Friday,
MONDayOfWeek_Saturday,
MONDayOfWeek_Sunday
} MONDayOfWeek;
// in use:
MONDayOfWeek day = MONDayOfWeek_Monday;