Wenn man eine Klasse entwirft, die eine explizite Konvertierung in bool hat, könnte man sich fragen, wo sie als boolescher Operator ohne explizite Umwandlung verwendet werden kann .
Der C-Standard definiert bestimmte Szenarien, in denen ein Wert „kontextuell in bool konvertiert“ werden kann. Diese Situationen fallen in vier Hauptkategorien:
1. Anweisungen:
2. Ausdrücke:
3. Tests zur Kompilierungszeit:
4. Algorithmen und Konzepte:
Es ist erwähnenswert, dass eine Kombination aus Const- und Nicht-Const-Konvertierungsoperatoren zu Verwirrung führen kann. Weitere Informationen finden Sie in den folgenden Fragen:
Das obige ist der detaillierte Inhalt vonWann funktioniert ein expliziter „Operator bool' ohne Casting in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!