我有一長串的#define
語句(Objective-C),它們被分配了唯一的整數值。自動爲#defines分配唯一值
實際值無關緊要;他們只需要非零且獨特。這些值用於創建NSNumbers
和switch語句。
例如:
#define FUNCTION_s 1
#define FUNCTION_a 7
#define FUNCTION_kk 3
用法:
NSArray *array = @[ @(FUNCTION_s), @(FUNCTION_a) ];
// ...
switch (val) {
case FUNCTION_kk:
// code
break;
}
我想簡化名單,所以我不擔心實際的數字或意外使用重複的值。爲了便於閱讀,我經常重新排列清單,所以我已經使用過的數字並不總是很明顯。
有沒有類似於使用枚舉的方法,它會自動爲每個#define
分配一個唯一值?
爲什麼他們需要'#define's?正如你甚至在問題中提到的,並在下面trick14回覆,這是一個'enum'的聲音。 – walkytalky