интервал к кастингу bool

В ПРОТИВ 10 я получаю предупреждение:

warning C4800: 'int' : forcing value to bool 'true' or 'false' (performance warning)

попытка собрать

int x ;
static_cast(x);

Как возможно написать код, который не вызывает это предупреждение?

0
nl ja de
Это не ошибка, это - предупреждение.
добавлено автор Steve-o, источник
Выключите предупреждение.
добавлено автор Pete Becker, источник

3 ответы

Как насчет чего-то это:

x != 0
7
добавлено
Который имеет преимущество того, чтобы быть более ясным.
добавлено автор James Kanze, источник
int x ;
bool b1 = !!x; //common idiom; get used to it.  "Newcomers" just need to learn the idiom.
bool b2 = x!=0;//another way, less idiomatic
2
добавлено

Это - глупое предупреждение и может игнорироваться/отключаться. Нет никакой исполнительной проблемы, насколько я знаю.

1
добавлено
pro.cxx
pro.cxx
3 049 участник(ов)

C/C++ chat 0. Простые вопросы, лабы и о IDE — в чат новичков @supapro 1. Не хамим, не переходим на личности, не вбрасываем утверждения без доказательств 2. No Ads, offtop, flood Объявления о вакансиях и евенты - в лс @AlexFails https://t.me/ProCxx/259155

supapro.cxx
supapro.cxx
1 925 участник(ов)

Чат для тех, кто немного знает C++, простые вопросы по реализации, синтаксису и ide – сюда, а для другого есть: /Главный чат по серьезным вопросам — @ProCxx /Чат по обсуждению всего — @fludpac

C++ Russia
C++ Russia
384 участник(ов)

Сообщество разработчиков C++ в Telegram.

cxx.Дискуссионная
cxx.Дискуссионная
298 участник(ов)

это не двач, общайтесь вежливо; разговор на почти любые темы; Не согласны с баном? В лс @AlexFails, @ivario

C++ для маленьких и тупых
C++ для маленьких и тупых
105 участник(ов)

Лоу левел (по среднему IQ участников) чатик ExtremeCode @extremecode Флудилка @extremecode_rest