if (A) {
共通処理AB();
非共通処理A();
} else if (B) {
共通処理AB();
非共通処理B();
} else if (C) {
非共通処理C();
} else {
// assertかなんかしとけよ。
}