我目前正在处理某人的其他代码,这样的声明
if(x.start()) do if(y.foo(x)) { // Do things }while(x.inc())
这里x是自定义类,它包含y的信息,并允许以特殊顺序迭代其元素.如果相关,我会提供此信息,但我的问题更为笼统:
我认为在do {} while()语句中,do部分必须跟在括号之后,而在末尾使用while()条件的这个togheter定义了do-while循环.
>为什么我们可以在做之后放一个if?
>它做什么?
>还有什么可以放在和{?
我找不到与此相关或谷歌相关的其他问题,大多数相关内容将if语句置于循环中.
解决方法
语法允许do和while之间的任何语句.只是你通常会在那里看到一种特殊形式的语句 – 复合语句,{/ *语句* /},通常也称为块.
代码的do-while部分完全等同于
do { if(y.foo(x)) { // Do things } } while(x.inc());