Язык С++ и программирование на нем. Рейзлин В.И. - 76 стр.

UptoLike

Составители: 

78
то переменным op1, op2, op3 можно присваивать значения plus, minus,
...; m1, m2 – Jan, Feb и т. д., а элементам массива c[0] ... c[9]значения
red и green.
Перечислитель может появиться везде, где разрешено появление
значения типа int. Обратное неверно без явного преобразования типа.
int i = dummy; // i = = 5
month current_month = Jan;
current_month =0; // Ошибка! Будет выдано предупреждение.
current_month = ( month )0; // Теперь верно!
Feb = 1; // Ошибка: Febконстанта!
Пример:
# include < iostream.h >
const NUMDAYS = 7;
enum DAYS { mon, tue, wen, thur, fri, sat, sun } day1, day2, day3;
DAYS day_before ( DAYS ), day_after ( DAYS );
void print_day ( DAYS );
void main ( ) {
day1 = sun;
day2 = day_after ( day1 );
day3 = day_before ( day1);
cout << “Если сегодня“;
print_day ( day1 );
cout << “, то завтра будет ”;
print_day ( day2 );
cout <<“,\n а вчера был день;
print_day ( day3 );
cout <<“.\n”;
}
DAYS day_after (DAYS day ){
return (( DAYS ) (( day +1 )% NUMDAYS) );
}
DAYS day_before ( DAYS day ) {
int prev = (day-1 )%NUMDAYS ;
return ( prev <0 ) ? ( NUMDAYS – 1): prev ;
}
void print_day ( DAYS day ) {