Mögliche Duplizieren:
Double Negation in C++ codeWarum zwei '!' Operatoren auf einem booleschen Wert?
Wenn ich das Webkit-Quellcode gescannt, ich eine seltsame Verwendung des boolean "nicht" Operator !
gefunden:
BOOL enabled;
if (SUCCEEDED(sharedPreferences->continuousSpellCheckingEnabled(&enabled)))
continuousSpellCheckingEnabled = !!enabled;
if (SUCCEEDED(sharedPreferences->grammarCheckingEnabled(&enabled)))
grammarCheckingEnabled = !!enabled;
Warum verwenden sie nicht enabled
direkt anstelle von !!enabled
?
Nichts hier erwähnt explizit, aber die 'BOOL' ist höchstwahrscheinlich eine ganze Zahl von einer Art. Gemessen an "SUCCEEDED" nehme ich Winapi an, in dem es "int" ist. – chris