Tag: nested if

嵌套if或switch case语句

从优化代码运行时的角度来看,是否有一个拇指规则,用于何处使用“嵌套if”语句以及何时使用“switch case”语句?

“if”没有花括号的块会使后续的“else if”嵌套

AFAIK,如果没有提供“if”块,那么花括号内部只会考虑1个语句。 例如 if(..) statement_1; statement_2; 无论选项卡如何, if块中都只考虑statement_1 。 以下代码与此不相符: int main () { if(false) // outer – if if(false) // nested – if cout << "false false\n"; else if(true) cout << "true\n"; } 上面的代码不打印任何东西。 它应该打印”true” 。 else if自动嵌套在外部 if块中,它将显示为else if 。 g++ -Wall发出警告,但这不是问题。 一旦你把花括号,一切都按预期的顺利。 为何如此不同的行为? [海湾合作委员会演示: 没有牙箍和大括号 ]。