(C++) Boolsche If-Abfrage
-
Gegegeben sei folgende Funktion:
bool Testfunktion() { return true; }
Wie schreibt man nun die If-Abfrage dazu vernünftig, wenn der Rückgabewert auf "true" geprüft werden soll?
if(Testfunktion())
oder
if(Testfunktion() == true)
-
Ersteres. Das andere sieht eher peinlich aus und zeugt von fehlendem Verständnis der Materie.
-
true und false sind defines welche 0 und 1 repräsentieren.
Beantwortet das deine Frage ?
-
Original erstellt von Unix-Tom:
true und false sind defines welche 0 und 1 repräsentieren.Teils falsche, teils irreführende Antwort. Falsch, da true und false keine defines sind, sondern Literale des eingebauten Typs bool, irreführend, da du implizierst, dass true mit 0 und false mit 1 korrespondiert, während es genau andersherum ist.
-
Nein, ich mein das was Bashar meint. Welche Abfrage davon stilistisch besser ist. Aber ich bin eher für zweiteres. Denn wenn man nämlich die Verneinung macht ist das nicht so gut ersichtlich.
if(!Testfunction())
Da fällt das ! doch garnicht sofort auf.
Da find ich irgendwie
if(Testfunction() == false)
Fällt viel besser ins Auge worum es geht.
-
Deshalb soll man ja Funktionsnamen auch mit einem Kleinbuchstaben beginnen lassen
Wenn du tatsächlich ein Problem damit hast, das ! zu erkennen, kann ich dir nicht helfen, andernfalls ziehe ich grundsätzlich die Version ohne expliziten Vergleich vor.
-
Original erstellt von <If-Abfrage>:
**if(!Testfunction())
Da fällt das ! doch garnicht sofort auf.
**Brille: Fielmann
-
Ich verschieb das mal nach C++