【发布时间】:2019-03-14 21:02:12
【问题描述】:
我对 C++ 语言相当陌生,我很好奇是否有适合我的项目。 Arrays 存储多个元素。正如我所相信的那样,dictionarys(或maps)存储项目和它们的 ID。还有收藏。但是,我对数组的树格式更感兴趣。我有很多项目需要存储在一个数组中,但每个项目还需要轻松引用子元素,如下所示:
Jason
/\
Age Weight
| |
14 140
我很好奇是否有适合我需要的物品。正如您应该能够在上面的模型中看到的那样,我有一个项目 (Jason),有多个子模型(比如一棵树)。
我的程序随机创建具有这些属性(年龄、体重和姓名)的人,因此我无法为每个人指定一个特定的数组,因为我不知道会有多少人。有没有办法把这些树拿起来方便取用?
【问题讨论】:
-
std::map<std::string, std::map<std::string, some_numeric_type>>听起来差不多。外部地图是人名与该人属性地图的配对。 -
或
struct person { std::string name; int age; int weight;}; std::vector<person> people;(缓存效率为赢) -
同意。如果每个人的属性都相同,那么
struct会胜出。 -
@NathanOliver 谢谢!我之前只听说过
structs,不知道它们的用途。这将完美地满足我的需求。