读书人

条件组合 怎么优化

发布时间: 2012-06-19 14:45:20 作者: rapoo

条件组合 如何优化?
GetMin()
{
bool b1,b2,b3,b4;
int n1,n2,n3,n4;
b1 = b2=b3=b4 = FALSE;
n1=n2=n3=n4 = m_nValue;//m_nValue是个初始值
/*
.....
此处的代码可能修改b1 b2 b3 b4
.....
*/
if(b1)//系列条件,最后获得最小值
{
;//if()
}

}
各条件组合怎么写比较简单?

因为4个条件组合好像有15种

[解决办法]
将b1 ~ b4做成一个4bit的值,然后用switch case?
[解决办法]
如果某些条件满足了,就return掉,可以减少一些{}的嵌套
[解决办法]

探讨
将b1 ~ b4做成一个4bit的值,然后用switch case?

[解决办法]
三楼的意思是这样的
b0 x+=1;
b1 x+=2;
b2 x+=4;
b3 x+=8;

不用嵌套b0~b3,直接看x的值就可知道是什么情况了
例如说x=1 刚说明b0==true;
 x=3 刚说明b0==true&&b1==true..
x=...

[解决办法]
可以这样 用0或1表示false和ture
b1 b2 b3 b4 可以用1111表示全真 0000表示全假

读书人网 >VC/MFC

热点推荐