如果我想實現下面的代碼,那麼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