Assert рассматривается как приведение стиля C в Visual Studio - PullRequest
0 голосов
/ 30 апреля 2020

Вот ошибка и проблеск кода Один из моих курсов требует от меня использования уровня предупреждения 4 и обработки предупреждений как ошибок в Visual Studio. Кроме того, нам также необходимо активировать Cpp Core Guidelines. Однако, так как я активировал эти опции, меня преследовала ошибка предупреждения C26493 (не используйте приведения в стиле C). Видимо, они считают мои тесты "assert" бросками стиля C. Я не видел ни одного другого студента с такой проблемой. Может кто-нибудь помочь мне исправить это?

1 Ответ

0 голосов
/ 30 апреля 2020

Assert - это макрос, который расширяется (в visual studio) до:


    #define assert(expression) (void)(                                                       \
            (!!(expression)) ||                                                              \
            (_wassert(_CRT_WIDE(#expression), _CRT_WIDE(__FILE__), (unsigned)(__LINE__)), 0) \
        )

Как вы можете видеть, существует случай с C стилем для аннулирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...