reinterpret_cast не должен использоваться
reinterpret_cast не должен использоваться.
reinterpret_cast обычно используется, чтобы явным образом преобразовать между двумя несвязанными типами данных. Например, в этом примере, reinterpret_cast преобразует тип struct S* к int*:
struct S { int x; } s;
int* ptr = reinterpret_cast<int*> (&s);Однако это затрудняет, чтобы использовать reinterpret_cast и не нарушают безопасность типов. Если результат reinterpret_cast указатель, безопасно разыменовать указатель только после того, как вы бросаете указатель назад на его исходный тип.
Средство проверки правила отмечает все использование reinterpret_cast ключевое слово.
Если средство проверки правила отмечает использование reinterpret_cast то, что вы считаете безопасными, добавьте комментарий, выравнивающий по ширине результат. См.:
Обратитесь к Результатам Polyspace Через Исправления ошибок или Выравнивания, если вы рассматриваете результаты в пользовательском интерфейсе Polyspace.
Обратитесь к Результатам в Polyspace доступ Через Исправления ошибок или Выравнивания, если вы рассматриваете результаты в веб-браузере.
Аннотируйте Код и Скройте Известные или Приемлемые результаты, если вы рассматриваете результаты в IDE.
Если вы ожидаете нарушение правила, но не видите его, относитесь, чтобы Диагностировать, Почему Кодирующие Стандартные Нарушения Не Появляются как ожидалось.
| Группа: Выражения |
| Категория: необходимый, автоматизированный |