Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Как правильно впихнуть и использовать перечисления в структуре? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ итерационный цикл http://www.cyberforum.ru/cpp-beginners/thread653537.html
Всем привет, сижу, не могу понять как сделать функцию для поиска суммы ряда. вот задание : Разработать алгоритм и составить программу вычисления значений суммы S заданного ряда при различных...
C++ Функция.Ряд тейлора для експоненты Заранее прошу искреннего извинения за свою дурость, но все таки, ctrl+c ctrl+v не хочу заниматся, и сообственно в чем проблемма, написал функция для нахождения експоненты Ех через разложение в ряд... http://www.cyberforum.ru/cpp-beginners/thread653532.html
C++ Путём перестановки элементов матрицы поместить её максимальный элемент в левый верхний угол
Помогите пожалуйста бездарю( дана целочисленная квадратная матрица размером 4х4 написать программу, содержащую функцию, которая путём перестановки элементов помещает её максимальный элемент в левый...
Перевод матрицы в одномерный массив, динамическое выделение памяти для матрицы C++
Здравствуйте. Никак не могу разобраться с этой программой. Вот код: /********************** Файл LAB2.H *************************/ /* Описание функций и внешних переменных файла LAB2.C ...
C++ Динамический массив http://www.cyberforum.ru/cpp-beginners/thread653490.html
Распечатать элементы динамического массива mas в одномерный динамический a. 1 по правым диагоналям, начиная с правого верхнего элемента 2 по спирали, начиная с центрального элемента Массив...
C++ Объясните как работает _getch() со стрелками Я недавно начал учить С++ и я совершенно не понимаю как эта функция работает со стрелками. Например код вида char ch; ch=_getch(); cout<<ch; _getch(); Сразу же закроется при первом... подробнее

Показать сообщение отдельно
DU
1483 / 1059 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
17.09.2012, 22:15
такой каст может глючить. размер енума вроде не обязательно соответствует размеру инта. может быть и меньше. точно не могу сказать.
правильнее было бы сделать свои операторы ввода вывода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
EnumType IntToEnumType(int val)
{
   // тут проверки что у val корректное значение.
   return static_cast<EnumType>(val);
}
 
std::istream operator >> (std::istream& in, EnumType& e)
{
  int val = 0; // тут всякой шаблонной магией можно сделать так, чтобы был не int а какое-то другой, более правильный встроенный тип.
  in >> val;
  e = IntToEnumType(val);
  return in;
}
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru