在一个旧的代码库中,我发现了以下片段:
for(;;){
// code that manipulates a vector 'vec'
if(vec.empty()) break;
}
除了各自作者的个人口味之外,使用for(;;)
而不是while(true)
背后是否有任何目的或约定?
#define EVER ;;
,然后使用for(EVER)
:) - NathanOliverwhile (true)
会提示条件基于常量表达式(或类似内容)而发出警告,而使用for (;;)
则不会。请注意,我的翻译尽量保持原意并使语言更加通俗易懂。 - Algirdas Preidžius