如果我想实现下面的代码,那么enums是合适的吗?我查了几个关于枚举的问题,但我还是有点不确定。iOS - 这是一个枚举任务吗?
if (dayOfWeek == Monday)
{
// Do something
}
else if (dayOfWeek == Tuesday || dayOfWeek == Wednesday)
{
// Do something else
}
如果这看起来是正确的,我将如何去初始化枚举?它会进入头文件或实现文件吗?
如果我想实现下面的代码,那么enums是合适的吗?我查了几个关于枚举的问题,但我还是有点不确定。iOS - 这是一个枚举任务吗?
if (dayOfWeek == Monday)
{
// Do something
}
else if (dayOfWeek == Tuesday || dayOfWeek == Wednesday)
{
// Do something else
}
如果这看起来是正确的,我将如何去初始化枚举?它会进入头文件或实现文件吗?
如果我想执行下面的代码,那么枚举是合适的吗?
没有太过于详细的选择 - 是的。
我该如何去初始化枚举?
我通常用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
将是库中的枚举名称,然后附加值。
尽管它很罗嗦,但你倾向于避免碰撞。
它会进入头文件或实现文件吗?
在标题中,如果你想让它被多个文件使用,否则在实现文件中。
是的,这将是巨大的枚举,看看这个SO后看到一个枚举的建设:
What is a typedef enum in Objective-C?
typedef enum {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
} DayOfTheWeek;
此外,您还可以决定是否要放置枚举实施在你正在工作的课程或头文件中。
+1为前缀和未定义。这可以防止很多错误。 – Sulthan 2012-02-04 00:18:09