| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > GetEnumName |
| Автор: Rennigth 9.10.2007, 10:22 | ||||
| Всем привет. Тут коллега меня удивил и сказал что из всех enum-ов можно извлечь их строковое представление(как в самом коде). Я сначала не поверил но потом он привел пример и я немного шокирован. Вообщем код:
Угадайте, что будет в комбике? вот-вот. Плюс я дальше исследовал ситуацию и посмотрел код GetEnumName, и увидел вот что:
В T-е храниться столько всего, аж жуть. Размер этого чуда (SizeOf(T^) = 1026). Я в шоке... Не ужели для каждоко enum-а создается и храниться столько хлама? Enum по определению должен занимать 1байт, а к нему привешивают в нагрузку еще минимум 1кб! P.S. Я знаю что в rtti храниться много инфы для классов, vmt там и еще много чего разного, но не для простых enum-ов же. P.S.S. Я теряю веру в справедливость... |
| Автор: Alexeis 9.10.2007, 10:28 |
| Rennigth, думаю это добавляется только если это запрашивается где-то в коде, так просто ничего не должно добавляться. |