Урок 10. Case в C++ 2.2

Как вы могли видеть из примера выше, оператор case умеет проверять объекты только на равенство (==). Кроме того, если значение не попало в контролируемый вами диапазон, то в этом случае тоже можно произвести какие — нибудь действия, например вывести сообщение об ошибке.
Таким образом оператор switch — case имеет следующую сигнатуру:

1
2
3
4
5
6
7
8
9
switch (переменная)
{
case значение1:
        операторы1;
case значение2:
        операторы2;
default:
        операторы 3;
}

Где переменная, это имя переменной значения которой мы хотим проверить, значение — это значение, на которое мы хотим проверить, а операторы это последовательность операторов, которую необходимо выполнить в этом случае.
Оператор break используется для того, чтобы после того, как условие выполнилось, не выполнились остальные операторы, например:

1
2
3
4
5
6
7
8
9
10
11
12
int a = 1;
switch (a)
{
case 0:
        cout << 0;//не выполнится
case 1:
        cout << 1;//выполнится
case 2:
        cout << 2;//выполнится, потому что до него уже выполнилось условие
case 3:
        cout << 3;//выполнится, потому что до него уже выполнилось условие    
}

Выведет: 123
Если вас не устраивает такое поведения, то просто добавьте break; в конец каждого case.

Категория: C++ | Добавил: ghost_mod (29.09.2016)
Просмотров: 435 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email:
Подписка:1
Код *: