c++ - 具有多个独立参数的 C++ For 循环
问题描述
有没有办法在 C++ 中编写类似的东西
for(int a1=0; a1<n;a1++)
{
for (int a2 = 0; a2 < m; a2++)
{
some stuff
}
}
在一个循环中。我已经看到了类似的东西
for(int i =0, int j=0; i<n && j<m; i++,j++)
但我希望增量是独立的而不是同步的。
解决方案
这是使用 range-v3 的一种方法:
namespace rv = ranges::views;
for (auto [a1, a2] : rv::cartesian_product(rv::iota(0, n), rv::iota(0, m)))
// use a1 and a2
这是一个演示。
您可以通过向rv::cartesian_product
.
推荐阅读
- python - Pandas 根据另一列中的条件计算一列中的数字
- ios - Swift 中的条件导入不起作用?
- java - 我正在尝试在不打开选择器的情况下向多个人发送电子邮件,这可能吗?
- scala - 值不是类型参数的成员
- deserialization - 如何仅使用时钟在 Verilog 中设计串行到并行缓冲区?
- c# - 图像不显示 Xamarin.Forms
- css - Flexbox:尝试使用 Flex-end 和文本对齐
- c# - C# IOptions 不能将我的对象隐式转换为接口以将其注入我的服务 AddSingleton
- javascript - 在 Pycharm 中,我无法获取 JSON 文件,也无法安装 fetch
- solr - Solr:更新请求处理器不是小写