Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР4-С++-13 марта-2012 - копия.doc
Скачиваний:
11
Добавлен:
15.09.2019
Размер:
2.55 Mб
Скачать

1.7. Перечисления

При использовании большого количества логически взаимо­связанных констант удобно пользоваться перечислениями. Перечисления имеют вид:

enum Name {iteml[=def],

item2[=def],

... itemN[=def ] } ;

где

enum - ключевое слово (от enumerate - перечислять),

Name - имя списка констант,

iteml...itemN - перечень целочисленных констант,

[=def] - необязательный параметр инициализации.

Предположим, нам необходимо в программе описать рабо­ту светофора. Известно, что его цвет может принимать лишь 3 значения: красный (RED), желтый (YELLOW) и зеленый (GREEN). Для обработки полученных от светофора сигналов заведем три константы с такими же именами - RED, YELLOW и GREEN, проинициализировав их любыми неповторяющимися значениями с тем, чтобы в дальнейшем проверять, какой из этих трех цветов горит.

Например, мы могли бы записать.

Пример 4.17.

const int RED = 0;

const int YELLOW =1;

const int GREEN = 2;

Используя перечисления, то же самое можно сделать в одну строку:

enum COLOR {RED, YELLOW, GREEN};

Константы перечисления обладают следующей важной осо­бенностью: если значение константы не указано, оно на единицу больше значения предыдущей константы. По умолчанию первая константа имеет значение 0.

То же перечисление можно было проинициализировать дру­гими значениями:

enum COLOR {RED=13, YELLOW=l, GREEN};

При этом константа GREEN по-прежнему имеет значение 2.

1.8. Выражения

Выражение в С++ представляет собой последовательность операторов, операндов и знаков пунктуации, воспринимаемую компилятором как руководство к определенному действию над данными. Всякое выражение, за которым идет точка с запятой, образует предложение или инструкцию языка:

выражение;

На практике возможны также случаи, когда сами операнды в выражениях могут быть представлены выражениями.

Приведем примеры предложений языка:

х = 3 * (у + 2.48);

у = My_Func (dev, 9, i) ;

Выражение - это строка, составленная по определенным правилам из операндов, операций и предназначенная для получения значения. Например, 3+6/2*d.

Выражение называется константным, если его операндами являются только константы, например, 67-234.

По числу операндов, участвующих в операции, различают унарные (один операнд) и бинарные (два операнда) операции. Пример унарной операции -унарный минус (изменение знака числа); пример бинарной операции -*(умножение).

По типу выполняемой операции различают арифметические, сдвига, поразрядные логические, логические, операции отношения и др.

Из констант, переменных, разделителей и знаков операций можно конструировать выражения. Каждое выражение представляет собой правило вычисления нового значения. Каждое выражение состоит из одного или нескольких операндов, символов операций и ограничителей. Если выражение формирует целое или вещественное число, то оно называется арифметическим. Пара арифметических выражений, объединенная операцией сравнения, называется отношением. Если отношение имеет ненулевое значение, то оно – истинно, иначе – ложно.