在不声明单独变量的情况下进行的条件

问题描述 投票:1回答:3

我在类似这样的函数中有一个do-while循环:

do
{
    // a bunch of stuff
    if (something < something else)
    {
        return true;
    }
    else if (stuff > other stuff)
    {
        if (something != other stuff)
        {
             return false;
        }
        else
        {
              return true;
         }
     }
} while (condition);

我的问题是condition结尾。我唯一可以跟踪的方法是在循环之前声明一个布尔变量,并将其值设置为与return值匹配,并在每次迭代后对while()进行检查。尽管这行得通,但对我来说似乎并不那么优雅,我想知道是否可以通过一种方法将while()插入return值。

c++ do-while control-flow
3个回答
1
投票

假设由于尝试将其解释而导致您的代码不正确,这是您应该做的,以满足与while();相同的返回要求的要求>

对于其他人,下面的代码是不正确的逻辑,但是我试图将其保留在他使用的类似伪代码中。基本上,如果您想让while模仿返回值,则需要返回的!才能退出条件。

do
{
    // a bunch of stuff
    if (something < something else)
    {
        return !condition;
    }
    else if (stuff > other stuff)
    {
        if (something != other stuff)
        {
             return condition;
        }
        else
        {
              return !condition;
        }
    }
} while (condition);

2
投票

尚不清楚您的状况如何。无论如何,您可能想要一个无限循环:


0
投票

你只能说

© www.soinside.com 2019 - 2024. All rights reserved.