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