这种情况除了嵌套一堆if,还有什么方法?
void do_something(float x, float y, float z){}
void do_something(float x, float y, float z){ if(x>0) do_something_x_positive(y,z); else if(x<0) do_something_y_minus(y,z); else do_something_y_zero(y,z);}
[解决办法]
下面的代码帮你建了一个映射关系,随后你用关于flag的switch或者是数组什么的都很整齐方便了。
int flag = 0;if(x < 0){ flag |= 1 << 0;}else if(x > 0){ flag |= 2 << 0;}if(y < 0){ flag |= 1 << 2;}else if(y > 0){ flag |= 2 << 2;}if(z < 0){ flag |= 1 << 4;}else if(z > 0){ flag |= 2 << 4;}
[解决办法]
只能是if else
条件太多了!!