Явное интегральное преобразование или преобразование с плавающей точкой не должно увеличивать размер базового типа выражения cvalue
Явное интегральное преобразование или преобразование с плавающей точкой не должно увеличивать размер базового типа выражения cvalue.
Выражения, отмеченные этой проверкой, следуют подробным спецификациям для cvalue выражений из MISRA® Документация C++.
Если вы вычисляете выражение и позже приведете результат к другому типу, приведение не влияет на базовый тип оценки (самый широкий из типов данных операнда в выражении). Например, в этом примере сумма двух short операнды приводятся к более широкому типу int.
short op1; short op2; int res; res= static_cast<int> (op1 + op2);
int из-за более позднего актерского состава.Явное интегральное преобразование или преобразование с плавающей точкой не должно увеличивать размер базового типа выражения cvalue.
Комплексное выражение базового типа typeBeforeConversion можно привести только к более узкому целому типу с той же сигнальностью, однако тип назначения typeAfterconversion.
Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».
| Группа: Выражения |
| Категория: Требуемая |