我最近在编写一段代码,其中性能非常重要,基本上我有以下情况:
int len = some_very_big_number;
int counter = some_rather_small_number;
for( int i = len; i >= 0; --i ){
while( counter > 0 && costly other stuff here ){
/* do stuff */
--counter;
}
/* do more stuff */
}
Run Code Online (Sandbox Code Playgroud)
所以这里我有一个经常运行的循环,并且对于一定数量的运行,while块也将被执行,直到变量counter减少到零,然后不会调用while循环,因为第一个表达式将为false.
现在的问题是,如果使用
counter > 0和counter != 0?之间的性能有差异?
我怀疑会有,有没有人知道这方面的具体细节.