Warum benutzt keiner "and/or usw."



  • Das ist wohl einfach Gewohnheitssache. Ich finde &&, || intuitiver, da ich es gewohnt bin.


  • Mod

    Ich benutze teilweise and und or. Gewohnheitssache.



  • Ich stolpere nur auch darüber, weil ich Kollegen einen Einstieg in C++ geben soll und diese haben bisher nur SPS programmiert. Wenn die jetzt wie gewohnt ihre und/oder Verknüpfungen machen können, wäre das gar nicht so schlecht.



  • ScyllaIllciz schrieb:

    Ich führe mir gerade den C++ Standard zu Gemüte und sehe dabei, dass z.B. "and = &&" ist usw. Wieso benutzt dann keiner diese Alternativen und wieso wird das in keinem C++ Buch erwähnt.

    Ist nur rein aus interesse.

    weil die keiner kennt 🤡



  • Ich find's auch verwirrend. Sind die überhaupt boolsch oder bitweise? Und selbst, wenn ich das wüsste: bei | oder || sieht man das direkt. Bei AND klingt es so, als könnte man das für beides verwenden... find ich weniger explizit.



  • @Eisflamme
    Schau mal im Standard 2.6 Seite 21. Da gibt es auch bitor, bitand usw.



  • ScyllaIllciz schrieb:

    Wieso benutzt dann keiner diese Alternativen

    Ich sehe keinen Grund dazu. Ich persönlich finde and nicht aussagekräftiger als && . Code mit ihnen wird tendenziell weniger gut verstanden und von Compilern schlechter unterstützt. Meines Erachtens gehören die alternativen Schlüsselwörter wie die Di- und Trigraphen zu den Sprachmitteln, die niemand vermissen würde, gäbe es sie nicht. Aber weil sie existieren, werden sie halt doch von einzelnen Rebellen verwendet 😉

    Eisflamme schrieb:

    Ich find's auch verwirrend. Sind die überhaupt boolsch oder bitweise?

    Ersteres. Gibt auch noch

    bitand bitor
    


  • Kann der MS-Compiler and und or?



  • volkard schrieb:

    Kann der MS-Compiler and und or?

    Nicht als Schlüsselwörter, aber als Makros mit #include <ciso646> .

    Ich verstehe ohnehin nicht, warum diese Schlüsselwörter eingeführt wurden. Sie bringen keine neue Funktionalität, man kann sie komplett durch Makros emulieren. Im Gegenzug hätte man ein paar nützliche Bezeichner wie and nicht reserviert.



  • ok, wenn es auch bitor und andor gibt, dann ist mir das einfach zu lang zu schreiben ^^



  • Nexus schrieb:

    volkard schrieb:

    Kann der MS-Compiler and und or?

    Nicht als Schlüsselwörter, aber als Makros mit #include <ciso646> .

    Dann stelle ich nicht um.

    Nexus schrieb:

    Ich verstehe ohnehin nicht, warum diese Schlüsselwörter eingeführt wurden. Sie bringen keine neue Funktionalität, man kann sie komplett durch Makros emulieren. Im Gegenzug hätte man ein paar nützliche Bezeichner wie and nicht reserviert.

    Ich mag sie und würde sie saugerne benutzen. Bin eh ein Basic-Freak, der nur bei C++ gelandet ist, weil es besser ist.



  • Nicht als Schlüsselwörter, aber als Makros mit #include <ciso646>.

    Gerade getestet und kann das bestätigen 😉



  • volkard schrieb:

    Ich mag sie und würde sie saugerne benutzen. Bin eh ein Basic-Freak, der nur bei C++ gelandet ist, weil es besser ist.

    Ein weiterer Grund, warum ich sie nicht benutze, ist die Inkonsistenz. Warum sollte ich für boolsche Operatoren Schlüsselwörter nehmen? Sollte ich auch die bestehenden für Vergleichs- und Bitoperatoren verwenden? Und alle anderen Operatoren haben keine Schlüsselwörter verdient?

    Ist schon etwas schade, dass man wegen solcher Schlüsselwörter z.B. boost::mpl::and_ schreiben muss. Man hätte den Basic-Menschen das Gleiche mit Makros bieten können, ohne alle restlichen Programmierer mit sinnlosen Einschränkungen zu belästigen.


Anmelden zum Antworten