c++ - 结构 vector 内部的结构 vector

标签 c++ vector struct

想象一下用 C++ 编写的社交网络帐户数据库之类的东西。每个帐户都有自己的用户名、级别(管理员等)、关注此帐户的用户列表以及向此帐户发送消息的用户列表。

问题是,我想计算每个单独用户收到的消息数,因此内部结构中的名称和计数必须链接在一起。

这是实现的好主意吗?

    struct User {
        string name;
        int level;

        vector<string> followedBy;
        struct MessagedBy {
            string name;
            int count;
        };
    };

vector<User> users;
//@TODO vector of MessagedBy as an instance of User

如何在 结构 vector 中创建结构 vector ?我该如何指向它?

最佳答案

所以,你可能想要这样的东西:

struct User {
        string name;
        int level;

    vector<string> followedBy;
    struct MessagedBy {
        string name;
        int count;
    };
    vector<MessageBy> messages;
};

然后您可以使用:

cout << "Messages from: " << users[index].messages[otherindex].name << ":" << users[index].messages[otherindex].count;

关于c++ - 结构 vector 内部的结构 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15553057/

相关文章:

c++ - 如何从 std::map 值的 std::vector 中找到最小键值?

c - 为什么在创建结构时需要地址运算符(&)?

c++ - _tcsncpy_s() 覆盖旧内容?

c++ - 使用链表或数组进行垄断?

C++ 递归模板分辨率 : flattening vectors of vectors elegantly

c++ - 读取C++中数据类型为Class的.dat文件,然后将每一行存储在Class类型的vector中

c# - 如何在不使类型成为结构的情况下防止修改 Collection 中的对象?

c - 具有两个空指针的结构的大小是 4?

c++ - 在溢出的情况下,i++ 是否会为小于 int 的有符号类型调用未定义的行为?

c++ - 将字符串写入文件不等于从中读取的字符串