假设我有四种情况的四种功能:
void ac() {
//do something
}
void ad() {
//do something
}
void bc() {
//do something
}
void bd() {
//do something
}
void f(bool a, bool b, bool c, bool d) {
if(a and c) {
ac();
}
else if(a and d) {
ad();
}
else if(b and c) {
bc();
}
else if(b and d){
bd();
}
else {
throw 1;
}
}
Run Code Online (Sandbox Code Playgroud)
对于2比2的情况,这很简单,但在更复杂的情况下,这可能会变得非常繁琐.有没有办法简化这个?