Problem !!!



  • Ja, beim erhöhen des Werts um 1 - sonst sollte sich der "nächste" mal mit += vertraut machen.
    🕶



  • pedant_for_fun schrieb:

    [Rewind] schrieb:

    - Üblicherweise schreibt man in C**++** nicht a = a + 1; sondern a++;

    Wenn schon dann ++a.
    a++ ist nur was für Anfänger.

    Ach ja ?



  • *HUST* bitte nicht von Thema ablenken *HUST*

    duck und weg



  • pedant_for_fun schrieb:

    Wenn schon dann ++a.
    a++ ist nur was für Anfänger.

    Eher genau umgekehrt: deine starre Sichtweise ist nur was für Anfänger.



  • Oder wohl eher die eines Anfängers.



  • hustbaer schrieb:

    pedant_for_fun schrieb:

    Wenn schon dann ++a.
    a++ ist nur was für Anfänger.

    Eher genau umgekehrt: deine starre Sichtweise ist nur was für Anfänger.

    Dont feed the troll.



  • pedant_for_fun hat aber schon Recht. Auch wenn es bei int keine Rolle spielen mag, würde ich mir die Präfix-Version angewöhnen, es sei denn man braucht die Semantik der Postfix-Version.

    Und Hacker, kannst du mit dem Spam aufhören?



  • Nexus schrieb:

    pedant_for_fun hat aber schon Recht. Auch wenn es bei int keine Rolle spielen mag, würde ich mir die Präfix-Version angewöhnen, es sei denn man braucht die Semantik der Postfix-Version.

    Und Hacker, kannst du mit dem Spam aufhören?

    Ah, ja. Sry. 😕



  • Nexus schrieb:

    pedant_for_fun hat aber schon Recht. Auch wenn es bei int keine Rolle spielen mag, würde ich mir die Präfix-Version angewöhnen, es sei denn man braucht die Semantik der Postfix-Version.

    Und Hacker, kannst du mit dem Spam aufhören?

    Wieso denn ? Einschübe und andere, gewichtige Stil-Sachen sind verständlich, aber ob ++i oder i++ ... das juckt doch niemanden. Situationsabhängig benutzen und ansonsten nach Vorlieben, würde ich sagen.



  • Ich empfehle, generell ++i zu bevorzugen.



  • Wieso denn ? 😕

    foo();
    i++;
    foo();

    foo();
    ++i;
    foo();

    Soll der operator am zeilenanfang nun schöner sein, oder wie ?



  • cvcv schrieb:

    Wieso denn ? 😕

    foo();
    i++;
    foo();

    foo();
    ++i;
    foo();

    Soll der operator am zeilenanfang nun schöner sein, oder wie ?

    Hier kenne ich den Typ von i nicht udn muß annehmen, daß ++i performanter als i++ ist, weil ++i nur eine Referenz auf das erhöhte Objekt zurückgeben muß, während i++ eine Kopie des alten Wertes herauskopieren muß und sich zwischendurch merken muß.

    Weil ich nicht nachdenken will, ob i gerade ein einegbauter Typ ist oder eine Langzahlklasse oder ein stl-Iterator oder ein anderer (nicht billig zu kopierender) Iterator, schreibe ich einfach immer ++i. Außer, ich will echt den Rückgabewert von i++ benutzen, um eine lokale Variable zu sparen.



  • Auch wenn mein Vorschlag die mit dem Postfix verbundene Problematik der Zwischenschritte und des temporären Objekts nicht explizit berücksichtigt, beschränkt er sich nicht auf den Postfix, sondern verweist generell auf die Schreibweise.



  • Ja gut, wie du selber schon andeutest ist das bei eingebauten typen wayne, kein Geschwindigkeitsverlust.
    Bei eigenen typen ist das was anderes.



  • cvcv schrieb:

    Ja gut, wie du selber schon andeutest ist das bei eingebauten typen wayne, kein Geschwindigkeitsverlust.
    Bei eigenen typen ist das was anderes.

    Du kannst auch konsistent sein und immer ++i verwenden, wenn es dir nur auf den Seiteneffekt ankommt. So musst du keine Fälle unterscheiden und bist auf der sicheren Seite.


Anmelden zum Antworten