gpt4 book ai didi

c++ - 动态创建和填充数组

转载 作者:行者123 更新时间:2023-11-30 03:23:23 25 4
gpt4 key购买 nike

我有一个数组,要使用这样的对象填充 -

const std::map<Id, std::vector<Data>> *const DataSets[]=
{
&object.data1,
&object.data2,
&object.data3,
&object.data4
};

这里的条件是,如果 object.data1.size() == 0 我不想将它插入数组。在那种情况下,我想像这样填充我的数组 -

const std::map<Id, std::vector<Data>> *const DataSets[]=
{
&object.data2,
&object.data3,
&object.data4
};

更新我现在使用 std::vector 而不是 array 并尝试在与 array 相同的情况下初始化 vector -

const std::vector<std::map<Id, std::vector<Data>>> *const DataSets
{
&object.data1,
&object.data2,
&object.data3,
&object.data4
};

我收到错误:E0146 初始化值过多。我不能以这种方式初始化我的 vector 吗?如果没有,有人可以建议怎么做吗?

提前致谢!

最佳答案

你不会那样做。

分别地,如果您想做任何动态的事情,就不要使用 C 风格的普通数组。您只需将它包装在另一个 std::vector 中,因为它支持动态大小。

关于c++ - 动态创建和填充数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50405108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com