Не должно быть никаких неявных интегральных плаванием преобразований
Не должно быть никаких неявных интегральных плаванием преобразований.
Если вы преобразуете от плавающей точки до целочисленного типа, вы теряете информацию. Если вы явным образом не бросаете от плавающей точки до целочисленного типа, не ясно, предназначается ли потеря информации. Кроме того, если значение с плавающей точкой не может быть представлено в целочисленном типе, поведение не определено.
Преобразование от целого числа до типа с плавающей точкой может привести к неточному представлению значения. Ошибка от преобразования может накопиться по более поздним операциям и привести к неожиданным результатам.
Средство проверки отмечает неявные преобразования между типами с плавающей точкой (float
и double
) и целочисленные типы (short
, int
, и т.д.).
Это правило более приоритетно по сравнению с 5-0-4 и 5-0-6, если они применяются одновременно.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: Выражения |
Категория: необходимый |