您的位置:首页 > 编程语言

几个简单的代码优化技术(一)

2006-09-29 20:57 423 查看
几个简单的代码优化技术

这些都是自己的心得和一些书上零零散散的东西,可能有些不对的地方欢迎指正

带有&&的if语句

 

bool fun1(bool bMan, const string& strName)
{
    if(bMan && strName == "somebody") return true;
    return false;
}

bool fun2(bool bMan, const string& strName)
{
    if(strName == "somebody" && bMan) return true;
    return false;
}

 

在上面两个函数中我们一般都会选第一个。

因为前面的bMan判断非常简单,如果它失败了就直接往下跳,如果它成功了才需要对strName进行比较复杂的判断。而如果将strName放在前面则每次都必须经过一段复杂的判断

除了运算的复杂外,还要从概率上考虑一个问题,加入&&前后两个判断的运算复杂度一样的话,就要考虑把比较容易判断为false的放在前面,因为这样就比较少的执行到后面的判断

总结1:在&&的判断中将比较简单的放在前面,将比较容易为false放在前面

同样可以得出另一个关于||的判断

总结2:在||的判断中将比较简单的放在前面,将比较容易为true的放在前面
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  优化 string fun