for (auto [i, j] : vector<tuple<int, int>>{{1, 7}, {3, 2}})
cout << i << j;
有没有一种方法可以通过省略容器的类型说明来使基于范围的for循环更简洁?我不关心它的实际类型,只要它包含(数学上不是C ++)对或整数元组即可。下面的表格是最好的,但是不能编译:
for (auto [i, j] : {{1, 7}, {3, 2}})
cout << i << j;
编辑:
此问题与Range-based for over pair list不同,因为我使用结构化绑定。我不想使用first
或get<0>
进行访问。我在数学和常识上使用 pair ,而不是std::pair
。