| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Перегрузка оператора для enum |
| Автор: iff 29.10.2014, 01:10 | ||||
Собственно в последней строчке ошибка
Если писать tNumber(Data.Icon) или static_cast<tNumber>(Data.Icon) - не помогает. enum всё таки перечислимый тип или только набор констант... Если Icon объявить не tIcon, а tNumber - то всё ок, но хотелось бы указывать тип значения. Можно ли как-то это сделать? |
| Автор: Earnest 29.10.2014, 08:55 |
| Ну вы же написали свой оператор >> для tNumber. Сделайте то же самое для tIcon. Но вообще, если честно, не вижу ни малейшего смысла. Смахивает на пример из учебника. Я всегда сериализую перечисления как целые типы (с явным преобразованием). В реальных приложениях и без этой фигни мороки хватает. |
| Автор: Earnest 30.10.2014, 08:05 | ||
Да как-то так:
Конструкцию enum tIcon:tNumber вообще не очень поняла - это типа наследование ? И если не секрет, зачем вам свой тип tNumber? А также tText? Чем встроенные\стандартные не угодили? |