我进行了一个函数调用,当它返回 false 时,我继续无限期地检查,直到它返回 true。下面的代码可以吗?
while(true)
{
bool result = func();
if(result == false)
continue;
else
break;
}
我进行了一个函数调用,当它返回 false 时,我继续无限期地检查,直到它返回 true。下面的代码可以吗?
while(true)
{
bool result = func();
if(result == false)
continue;
else
break;
}
你可以这样做,但为什么不只是:
while(!func())
{
// do what you want to do...
}
如何摆脱break
and continue
。使用它们被认为不是很好(尤其是在不需要时):
bool result;
do
{
result = func();
if(result == false) {
// Supposedly you want to do something here...?
}
} while(result == false);
当然,您可以使用!
而不是false
在源代码中保存一些字节。但我认为这在这一点上并不重要。
为什么不使用
while (!func());
反而?有些人不喜欢看到空的while
,因此可能更喜欢@dwxw 的解决方案。
你可以让它更短。
do
{
} while (!func());