c++ - 我有一个嵌套数组,它由另一个数组中的元素组成 2 。之后,我想显示每个元素的属性
问题描述
我创建了一个嵌套数组(female_double_entry),由另一个数组(arr_female_double)中的元素组成,分组为 2。我试图显示嵌套数组的所有元素的“城市”属性,但我不能,我得到一个错误提示“'operator<<' 不匹配(操作数类型是 'std::ostream {aka std::basic_ostream}' 和 'Player')”也许我在代码的其他部分做错了什么。下面的代码只是整个代码的一小部分。“玩家”是我之前定义的具有“城市”属性的结构。如果我没有任何意义,我很抱歉,如果是,请忽略这个问题。
std::vector<std::vector<Player> > female_double_entry(8, vector<Player>(2));
std::cout << "female_double_entry.size = "<< female_double_entry.size() << '\n';
for (int i = 0; i < 8; i++) { //there are 8 entries for female double players
for (int j = 0; i < 1; j++) {
female_double_entry[i][j] = arr_female_double[2*i];
female_double_entry[i][j] = arr_female_double[2*i+1];
}
}
std::cout << "female_double_entry array size: "<<female_double_entry.size()<< '\n';
for (int i = 0; i < 8; i++) {
for (int j = 0; j < 2; j++) {
std::cout<<female_double_entry[i][j].city;
}
}
解决方案
我正在回答我的问题。首先,第一个嵌套循环中的第二行应该是: female_double_entry[i][j+i] = arr_female_double[2*i+1]; 而不是:female_double_entry[i][j] = arr_female_double[2*i+1];
其次,当我把数组声明改为普通数组时: Player female_double_entry[8][2]; 我可以展示这座城市。我不知道为什么矢量方法不起作用。
推荐阅读
- excel - Power Query M语言动态增加偏移值
- python - make apply 返回两个系列
- android - > 任务:app:checkDebugManifest FAILED //@React Native
- javascript - 从对象数组中的数据计算平均值并存储在对象的特定键中
- python - 如何在 docker 中连接 MariaDB 和 Python
- c# - Environment.GetCommandLineArgs() 可能会得到一个不受信任的字符串
- javascript - 如何将firebase身份验证与电子一起使用
- for-loop - 有没有办法组合嵌套循环,其中内部循环迭代变量迭代?
- java - Spring MVC 从本地 C: 驱动器读取文件
- dynamics-crm - Dynamic 365 - 检索 API 元数据属性列表 - DateTimeBehavior