Re[17]: Индекс по типу
От: Erop Россия  
Дата: 06.04.16 08:11
Оценка:
Здравствуйте, _hum_, Вы писали:

E>>Да, это тип для работы с числами, такой же как short, наример. Чем он менее "фундаментальный" чем short?


__>Если речь про enum, то я уже выше дал определение фундаментальности — независимость определения типа от других типов. Enum заивисит, а значит, не является фундаментальным.


Так чем short более фундаментален, чем
enum { start = 0, end = 10000 };
?
И то и то поддерживается процессором, и то и то числа, поддиапазон int, и то и то занимает 2 байта...


__>Это не поможет. Проблема-то именно в многообразии типов и не совсем прозрачной их операционной семантике (тот же chsr в VS может в зависимости от настроек проекта идти как unsigned char или signed char).

И что? Это шаблонной магии не мешает..

E>>Во-вторых, если не страдать перфекционизмом, можно через условную компиляцию/версии хедеров для разных платформ/компиляторов сделать.


E>>Только тут есть проблема. uint8_t нифига не "фундаментальный" тип в твоих понятиях, так что тока char, signed char и unsigned char...


__>Почему не фундаментальный-то? Это, насколько я понимаю, псевдоним для unsigned char.


Тогда я совсем не понимаю, что ты называешь "фундаментальный"...
Псевдоним у тебя фундаментальный, а enum нет?
Если вернуться к стандарту и его "встроенным" типам, то enum и указатель — встроенные...

__>Люди хотят, чтобы перенумерованы были типы, которые отличаются операционной семантикой. Людям все равно, как называется тип, главное уверенность, что если номер одинаковый, то типы будут всюду в коде вести себя одинаково.


Ну это фигня. Легко делается. Вот если ты ещё потребуешь, что бы если номер разнй, то будут вести по-разному, то будет хуже...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.