2
A
回答
2
name()
方法不能返回null
。如果該值不符合枚舉值,它將返回一個空字符串。建議進行空字符串檢查。
從IEEE std 1800-2012 § 6.19.5.6名稱()
名稱()方法返回給定的枚舉值的字符串表示引用。如果給定的值不是枚舉的成員,則name()方法將返回空字符串。
1
不,您不需要擔心null
枚舉。然而,枚舉可能是未初始化的,如果它不具有對應於0
例如狀態:
typedef enum {STATE0, STATE1} plain_enum;
typedef enum {VAL0=1, VAL1} special_enum;
module test;
initial begin
plain_enum plain;
special_enum special;
$display("plain: %s", plain.name());
$display("special: %s", special.name());
end
endmodule
返回:
# plain: STATE0
# special:
因爲special_enum
的狀態對應的沒有到0
編輯/重新運行代碼:http://www.edaplayground.com/s/4/647
相關問題
- 1. 我可以在枚舉中使用枚舉嗎?
- 2. 可以枚舉包含其他枚舉?
- 3. C++枚舉類可以有方法嗎?
- 4. 我可以使用@switch和枚舉嗎?
- 5. 這個hacky枚舉可以改進嗎?
- 6. 你可以重鑄枚舉嗎?
- 7. MySQL:我可以共享枚舉嗎?
- 8. 你可以擴展一個枚舉嗎?
- 9. 我可以比較MySQL枚舉嗎?
- 10. 我可以使用參數枚舉嗎?
- 11. roslyn可以生成枚舉嗎?
- 12. 爲什麼枚舉包括可枚舉
- 13. 讓短語可枚舉嗎?
- 14. 我們可以改變datomic枚舉嗎?或者我們可以添加任何新的值給datomic枚舉嗎?
- 15. 如何枚舉可以作爲串
- 16. 我可以在Java中爲枚舉指定序號嗎?
- 17. 可以將字符串轉換爲枚舉值嗎?
- 18. 我可以傳遞和使用枚舉作爲變量嗎?
- 19. 我可以使用枚舉作爲ConverterParameter嗎?
- 20. C#枚舉可以聲明爲bool類型嗎?
- 21. 「Context.User」可以爲null嗎?
- 22. 如何將字符串轉換爲SystemVerilog中的枚舉?
- 23. 我可以typdef一個枚舉是另一個typdef枚舉的擴展嗎?
- 24. 我可以啓用警告來比較枚舉值和非枚舉值嗎?
- 25. JAXB/MOXy可以像常規類(非枚舉)一樣序列化枚舉嗎?
- 26. 如何爲枚舉執行null檢查
- 27. 可可枚舉
- 28. 通用可爲空枚舉
- 29. 鑄造爲可空枚舉
- 30. 解析爲可空枚舉