微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C ++:向量的向量

如何解决C ++:向量的向量

| 我需要创建向量的向量(精确地说是3个向量的向量)。每个组成向量具有不同的数据类型(字符串,双精度,用户定义的数据类型)。这在C ++中可行吗?如果没有,是否还有其他优雅的方式可以实现我的要求?     

解决方法

        如果您知道其中的三个,并且知道它们的类型,为什么不只写一个类呢?
class Data
{
    std::vector<std::string> _strings;
    std::vector<double> _doubles;
    std::vector<UserDefined> _userDefined;
public:
    // ...
};
这也将提供一些强大的语义(在我看来,无关紧要的向量似乎很奇怪)。     ,        
template<typename T> struct inner_vectors {
    std::vector<double> double_vector;
    std::vector<std::string> string_vector;
    std::vector<T> user_vector;
};

std::vector<inner_vectors<some_type>> vector_of_vectors;
    ,        在我看来,结构或类是最好的方法,也是最优雅的解决方案。     ,        你是这个意思吗?
vector<tuple<vector<string>,vector<double>,vector<T> > >
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。