!!
ist eine idiomatische Methode zum Konvertieren bool
und funktioniert, um die dumme Warnung des Visual C ++ - Compilers über die angebliche Ineffizienz einer solchen Konvertierung zu beenden.
Ich sehe an den anderen Antworten und Kommentaren, dass viele Leute mit der Nützlichkeit dieser Redewendung in der Windows-Programmierung nicht vertraut sind. Das heißt, sie haben keine ernsthafte Windows-Programmierung durchgeführt. Und nehmen Sie blind an, dass das, was ihnen begegnet ist, repräsentativ ist (es ist nicht).
#include <iostream>
using namespace std;
int main( int argc, char* argv[] )
{
bool const b = static_cast< bool >( argc );
(void) argv;
(void) b;
}
> [d: \ dev \ test]
> cl foo.cpp
foo.cpp
foo.cpp (6): Warnung C4800: 'int': Erzwingt den Wert bool 'true' oder 'false' (Leistungswarnung)
[d: \ dev \ test]
> _
Und mindestens eine Person denkt, wenn ein Anfänger seine Bedeutung nicht erkennt, ist es nicht gut. Nun, das ist dumm. Es gibt eine Menge, die Anfänger nicht erkennen oder verstehen. Den eigenen Code so zu schreiben, dass er von jedem Anfänger verstanden wird, ist nichts für Profis. Nicht einmal für Studenten. Beginnen wir auf dem Weg, Operatoren und Operatorkombinationen auszuschließen, die Anfänger nicht erkennen ... Nun, ich habe nicht die richtigen Worte, um diesem Ansatz eine angemessene Beschreibung zu geben, sorry.