c++ - 元素包含子元素的数组?

标签 c++ arrays tree

我是 C++ 语言的新手,我很好奇是否有适合我的项目。 Array 存储多个元素。正如我所相信的那样,dictionary(或 map)存储项目和它们的 ID。还有收藏。但是,我对数组的树格式更感兴趣。我有很多项目需要存储在一个数组中,但这些项目中的每一个也需要轻松引用子元素,如下所示:

    Jason
      /\
   Age  Weight
    |      |
   14     140

我很好奇是否有适合我的需求的项目。正如您应该能够在上面的模型中看到的那样,我有一个项目 (Jason),它有多个子模型(就像一棵树)。

我的程序随机创建具有这些属性(年龄、体重和姓名)的人,因此我无法为每个人创建一个特定的数组,因为我不知道会有多少人。有没有办法固定这些树以便于访问?

最佳答案

您可以只创建一个 person 结构。

struct Person
{
    std::string name;
    int age;
    int weight;
};

std::vector< Person > persons;
persons.emplace_back( Person() ); // with your variables;

当你不想让你的数组中出现完全相同的人时, 使用 std::set (关联容器)代替。

关于c++ - 元素包含子元素的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55171965/

相关文章:

python - Prim 算法生成的最小生成树的预序树遍历

mysql - 如何正确排序 SQL 中的物化路径?

c++ - 如何在 C++/CX 中创建单例?

c++ - 新手关于COM的问题

javascript - 如何使用仅在运行时已知的变量名调用 JavaScript 函数?

java - for循环打印无效值?

java - MYSQL JDBC java.sql.SQLException : Operation not allowed after ResultSet closed

c++ - LinkedList ADT指针 block

C++:作为成员的抽象类

c++ - 动态数组的大小与提交的值不匹配