Ошибки, баги, вопросы - страница 3419
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Все строго по документации:
"Перед выполнением операций (кроме операций присваивания) происходит преобразование в тип, имеющий наибольший приоритет, а перед операциями присваивания - в целевой тип"
Неужели такой сильнейший в пустоту расход вычислительных ресурсов в безобидной записи?
Такую хрень теперь писать, чтобы избегать ненужных вычислений?!
Неужели такой сильнейший в пустоту расход вычислительных ресурсов в безобидной записи?
Такую хрень теперь писать, чтобы избегать ненужных вычислений?!
Дополнительного расхода нет - потому что все все равно через int делается
Результат: int
Поэтому и предупреждения (2) выше были избыточны, и как Вы справедливо заметили - вместо простого кода приходится писать "хрень"
Поэтому и предупреждения выше были избыточны, и как Вы правильно заметили - вместо простого кода приходится писать "хрень"
К сожалению, не выйдет.
Возможно, typename формально все правильно выводит, а оптимизатор компилятора убирает эти пустые преобразования.Дополнительного расхода нет - потому что все все равно через int делается
Получается, что short-числа работают медленнее int.
По крайней мере - не быстрее, а в ряде случаев не исключено, что и медленнее
Получается, что short-числа работают медленнее int.
Итоговый пример:
Пусть Разработчики проверят разницу между (1),(2),(3) c учетом (*) и того, что:
"Типы данных char, uchar, short и ushort в операциях безусловно приводятся к типу int"
Получается, что short-числа работают медленнее int.
Все челочисленные типы ниже 32 бит в выражениях преобразуются к инту (32 бит) безусловно, даже если в выражении не участвует int. По-моему, это даже в документации написано
Но если во (2) случае warning, то и в (1) тоже должен быть
С такой заботой о пользователе код превращается в трудночитаемую кашу
Предлагаю вернуть все как было - только необходимым минимум Warning