AUTOSAR C++ 14 правил A0-4-2

Тип долго удваивается, не буду использоваться

Описание

Управляйте определением

Тип долго удваивается, не буду использоваться.

Объяснение

Размер long double является зависящим от реализации и уменьшает мобильность вашего кода через компиляторы. Компиляторы могут реализовать long double как синоним для double или 80-битного типа расширенной точности или 128-битного четырехкратного типа точности, которые более точны, чем double.

Вместо этого для арифметики многократно увеличенной точности, которая требует типов, более точных, чем double, пользуйтесь библиотеками, которые поддерживают арифметику многократно увеличенной точности с четко определенными типами данных.

Реализация Polyspace

Средство проверки правила отмечает все использование ключевого слова long double.

Если вы не хотите устранять проблему, добавьте комментарий, выравнивающий по ширине результат. Смотрите Результаты Polyspace Адреса Через Исправления ошибок или Комментарии.

Поиск и устранение проблем

Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.

Примеры

развернуть все

void func() {
  float f{0.1F};  //Compliant
  double D(0.1);  //Compliant
  long double LD(0.1L);  //Noncompliant
}

Использование long double нарушает это правило.

Проверяйте информацию

Группа: Выражения

Введенный в R2019a