【问题标题】:Separating a for loop with two variables into two individual for loops (in c++)将带有两个变量的 for 循环分成两个单独的 for 循环(在 C++ 中)
【发布时间】:2021-12-20 22:09:39
【问题描述】:

我在 c++ 中有一个基本的 for 循环,它包含两个变量,但只增加其中一个变量:

for (int i = x, j = y; i < 20 && j < 60; i++)
    buffer[i][j] = characterChoice;

其中buffer 是一个二维数组,characterChoicexy 是任意变量;

我希望这个循环更具可读性和 C++ 友好性,那么我如何重写这个 for 循环以将其分成两个单独的 for 循环,同时仍然保持相同的实现?

【问题讨论】:

标签: c++ loops for-loop oop


【解决方案1】:

你只是在循环i,所以有 2 个循环没有任何意义。您可能很少看到带有两个 init 子表达式的循环,但它完全没问题。

如果将不变量从循环中提取出来,您的代码可能会得到哪些改进:

if (y < 60)
{
    for (int i = x; i < 20; i++)
    {
        buffer[i][y] = characterChoice;
    }
}

【讨论】:

    猜你喜欢
    • 2011-12-08
    • 2014-06-21
    • 1970-01-01
    • 2016-10-31
    • 1970-01-01
    • 2015-02-05
    • 2013-09-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多