開關

根據 C++標準,

switch 語句根據條件的值將控制轉移到多個語句之一。

關鍵字 switch 後面跟一個帶括號的條件和一個塊,它可能包含 case 標籤和一個可選的 default 標籤。執行 switch 語句時,控制權將轉移到 case 標籤,其值與條件(如果有)的值相匹配,或轉移到 default 標籤(如果有)。

條件必須是表示式或宣告,它具有整數或列舉型別,或具有轉換函式為整數或列舉型別的類型別。

char c = getchar();
bool confirmed;
switch (c) {
  case 'y':
    confirmed = true;
    break;
  case 'n':
    confirmed = false;
    break;
  default:
    std::cout << "invalid response!\n";
    abort();
}