簡體   English   中英

C ++中的多級哈希/字典創建

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM