Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > приведение int к enum |
Автор: itan 12.12.2006, 14:04 | ||||||
Вот есть у меня свой тип данных :
и есть функция, которая принимает этот тип в качестве параметра:
Вопрос в том - как мне можно защитить функцию func от передачи ей значений не свойственных типу Type , например таким образом:
Для усложнения задачи предположим, что количество "типов" у Type может быть большим и разброс их значений существеннен. |
Автор: JackYF 12.12.2006, 14:29 |
enum - это всего лишь нумерованные целые константы. Поэтому при желании любой может в твою функцию передать любую целую константу. Как вариант - сделай место этого битовое поле, эти самые константы - степени двойки. Или еще как-то... В самой функции все равно придется отсекать неправильные значения. А вот насколько быстро и легко это возможно будет сделать - уже зависит от значений твоих констант. |