[英]Multi level hash/dictionary creation in C++
我有點迷路。 我有一個如下的csv文件
USN Name DOB Sem Percentage
111 abc 07/03 3 88
112 cde 18/07 4 77
123 ghi 15/11 4 80
我想使用C ++創建一種字典結構(多級字典- Dictionary <string, Dictionary<string, string>>
)。 在這里,我想將第一行存儲為鍵,即USN,名稱,DOB ...作為哈希的鍵,並將該列中的值存儲為哈希的值。 可能嗎? 任何幫助將不勝感激..在此先感謝。
如果您定義的結構具有這些字段USN,Name,DOB,Sem,Percentage和數據類型(可以適當選擇),則USN(std :: string)可能是鍵,結構(Say MyStruct類型)可能是值。 所以hash_map以字符串作為鍵,MyStruct作為值。typedef hash_map MyDictionary; 應該做
給出您的問題,您應該使用unordered_map
,它是C ++ 11中的標准功能,在以前的實現中非常常見。 如果性能不太重要(或地圖很小),您也可以使用map
。 然后,您可以執行以下操作:
using namespace std;
unordered_map<string, unordered_map<string, string> > dict;
之后,這是解析CSV文件的問題...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.