Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Visual Studio 2019 och senare:
Implicit konvertering från "typ" till bool. Möjlig informationsförlust
C4800 är en varning på nivå 3 i Visual Studio 2015 och tidigare:
"type" : tvingar värdet till ett booleanvärde, 'true' eller 'false' (prestandavarning)
Anmärkningar
Den här varningen genereras när ett värde implicit konverteras till typen bool. Det här meddelandet orsakas vanligtvis av att int-variabler tilldelas bool-variabler där variabeln int endast innehåller värdena true och false, och kan omdeklareras som typ bool. Om du inte kan skriva om uttrycket för att använda typen boolkan du lägga till "!=0" i uttrycket, vilket ger uttryckstypen bool. Om du kastar uttrycket till typen bool inaktiveras inte varningen, vilket är avsiktligt.
Den här varningen genereras inte i Visual Studio 2017.
Den här varningen är inaktiverad som standard från och med Visual Studio 2019. Använd /wn4800 för att aktivera C4800 som en nivå n varning, eller /Wall för att aktivera alla varningar som är avstängda som standard. Mer information finns i Kompilatorvarningar som är inaktiverade som standard.
Example
Följande exempel genererar C4800 och visar hur du åtgärdar det:
// C4800.cpp
// compile with: /W4 /w44800
int main() {
int i = 0;
// To fix, instead try:
// bool i = 0;
bool j = i; // C4800
j++;
}