[英]How can i get an enum value from a file?
假設我有一個 .txt 文件,其中存儲了患者的個人數據列表。
Region Unique Hospital Code Surname Name FiscalCode/ID Patient Status
X 006 Rossi Mario RSSRMA56B76B249P 0
這是我的枚舉
enum patientStatus {
HomeCare=0,
HospitalCare,
SubIntensiveCare,
IntensiveCare,
Recovered
};
我應該使用 %d 打印那個枚舉嗎?
我總是將枚舉值的字符串形式保存到文件中,例如"HomeCare"
、 "HospitalCare"
等。
通過這種方式,您可以防止enum
值具有不同的支持類型,甚至在程序重構期間被重新排序。 無需查閱手冊,您也可以閱讀該文件。
當然,將字符串轉換為枚舉器會產生一些開銷,因此需要做一些工作。 但在性能方面,I/O 仍將是瓶頸。
這取決於enum
變量在您的特定系統上的大小。 它們不可移植 - 這是特定於編譯器的。 enum
變量可能與sizeof(int)
相同,也可能更小。
出於這個原因,在將它們寫入文件之前將它們轉換為可移植的uint32_t
可能是明智的,然后將它們作為uint32_t
讀取並從那里轉換回enum
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.