!ev is evaluated as true if ev converted to bool is false, otherwise false.
N3337 5.3.1 Unary operators
9
The operand of the logical negation operator ! is contextually converted to bool (Clause 4); its value is
true if the converted operand is false and false otherwise. The type of the result is bool.
2
solved Logical negation in front of variable c++ [closed]