我只是想弄清楚這些值本身是int,unsigned int,NSInteger。我以爲我看到有人說他們是未簽名的整數,但在蘋果的頭文件中我看到他們用來存儲負值。什麼是Objective-C的枚舉類型
1
A
回答
6
枚舉是C(和C++)的一個特性,而不是Objective-C。當你聲明一個枚舉時,你聲明一個新的C數據類型。
給定枚舉數據類型的大小可能是int
的大小,或者它可能只是足夠大以容納每個聲明的枚舉值。它是編譯器特有的,並且通常有編譯器設置來控制如何處理枚舉。
枚舉最大的可能是int
,所以你總是可以將任何枚舉值轉換爲int
。相反是不正確的。您無法將任何int
轉換爲枚舉值。
0
這是一個枚舉類型。您可以定義自己的類型,可以採用某些指定的值。
看到這個問題: What is a typedef enum in Objective-C?
所以,如果你有一個枚舉,如:
typedef enum {
NBType1,
NBType2,
NBType2,
} NBType
傳遞給方法的參數是NBType
類型。
1
枚舉整數是最大的32位signed int
s。
相關問題
- 1. 什麼是枚舉類型的操作?
- 2. 什麼是枚舉的返回類型|?
- 3. 什麼是通枚舉類型的WebAPI
- 4. 枚舉拋出「不是枚舉類型」
- 5. 什麼是「枚舉」?
- 6. '枚舉:類型'和簡單'枚舉'之間的區別是什麼
- 7. 枚舉(類)的允許類型是什麼?
- 8. 類型枚舉
- 9. 什麼是類,枚舉,接口,屬性?
- 10. 什麼是[?]以上枚舉/類定義?
- 11. Ç枚舉(枚舉類型定義)的
- 12. Node.js native枚舉中的枚舉類型
- 13. 你稱爲實現的枚舉類型是什麼?
- 14. 什麼是枚舉的默認屬性類型編輯器?
- 15. 枚舉數組的「通用」類型是什麼?
- 16. 爲什麼不是Byte默認的枚舉類型?
- 17. 枚舉類型的默認修飾符字段是什麼?
- 18. 枚舉值是什麼?
- 19. 什麼是Java枚舉?
- 20. 枚舉是什麼意思?
- 21. 什麼枚舉
- 22. ASN.1枚舉類型和選擇類型有什麼區別?
- 23. 枚舉vs強類型枚舉
- 24. 是枚舉實例「封閉」在枚舉類型的Java?
- 25. 上枚舉類型
- 26. HTML5枚舉類型
- 27. 爲枚舉類型
- 28. 枚舉或類型
- 29. psycopg2枚舉類型
- 30. 具有泛型類型的泛型枚舉枚舉
這比這更微妙一點。枚舉類型本身是編譯器依賴的整型,可能小於「int」。但枚舉*值實際上只是整型常量。 – 2012-02-10 21:13:25