Benutzt ihr schon C++14 und wenn ja was davon?



  • Mein Lieblingsfeature ist ganz klar die polymorphen Lambdas. Aber auch die Tausendertrennzeichen und Return-Type-Deduction verwende ich regelmässig.

    Insgesamt bin ich sehr zufrieden mit dem Update:
    Ohne C++14 willst du eh kein C++ benutzen, dann nimm lieber [beliebige andere Sprache].

    Btw, das hat mich überrascht:

    #include <cstdio>
    constexpr auto fib(int n) {
      unsigned long long f[2] = {0,1};
      for (int i=1; i<=n; ++i) f[i%2]=f[0]+f[1];
      return f[n%2];
    }
    int main() {
      constexpr auto x=fib(1'000'000);
      printf("%llu\n", x);
    }
    
    % time clang++ -std=c++1y ...
    1.68s user 0.02s system 99% cpu 1.706 total
    

  • Mod

    Ohne C++14 willst du eh kein C++ benutzen, dann nimm lieber [beliebige andere Sprache].

    Totaler Quatsch, war aber sicher sowieso scherzhaft gemeint.

    Btw, das hat mich überrascht:

    Wieso? Die Laufzeit ist doch im erwarteten Größenbereich, dachtest du das geht schneller?



  • constexpr schrieb:

    Aber auch die Tausendertrennzeichen [...] verwende ich regelmässig.

    Schade, dass man so einen Quatsch eingebaut hat. Das ermutigt die Leute zu noch mehr magischen Zahlen. Zusätzlich werden wir für Jahre unter der kaputten Darstellung in prä-C++14-Editoren zu leiden haben.

    constexpr schrieb:

    Btw, das hat mich überrascht:

    Was meinst du?



  • Arcoth schrieb:

    Ohne C++14 willst du eh kein C++ benutzen, dann nimm lieber [beliebige andere Sprache].

    Totaler Quatsch, war aber sicher sowieso scherzhaft gemeint.

    Ich dachte, ein cooky451-Zitat käme hier gut an.

    Arcoth schrieb:

    Btw, das hat mich überrascht:

    Wieso? Die Laufzeit ist doch im erwarteten Größenbereich, dachtest du das geht schneller?

    Man beachte, dass es die Laufzeit des Compilers ist, der fib(1'000'000) ausrechnet! Stell dir vor, wie lange 1'000'000 Template-Instanzierungen dauern würden.

    TyRoXx schrieb:

    constexpr schrieb:

    Aber auch die Tausendertrennzeichen [...] verwende ich regelmässig.

    Schade, dass man so einen Quatsch eingebaut hat. Das ermutigt die Leute zu noch mehr magischen Zahlen. Zusätzlich werden wir für Jahre unter der kaputten Darstellung in prä-C++14-Editoren zu leiden haben.

    Was stören mich prä-C++14-Editoren? Und abgesehen davon, dass magische Zahlen fast immer <1000 sind, hindert dich selbstverständlich niemand daran, die Konstanten zu benennen.


  • Mod

    Man beachte, dass es die Laufzeit des Compilers ist, der fib(1'000'000) ausrechnet!

    Ja und weiter? 😕

    Ich dachte, ein cooky451-Zitat käme hier gut an.

    Nein, das meinte cooky (hoffentlich) eher als Scherz.

    Was stören mich prä-C++14-Editoren?

    Es gibt noch keinen (mir bekannten) Editor, der C++14 unterstützt.



  • Umwerfende HullyGully-SuperDuper sind das Salz bei Neu- und Weiterentwicklungen? 😕
    Braucht man immer sehr dringend! 😃



  • Arcoth schrieb:

    Nein, das meinte cooky (hoffentlich) eher als Scherz.

    Ne das war kein Scherz, aber es ging um C++11, nicht um C++14.


  • Mod

    cooky451 schrieb:

    Arcoth schrieb:

    Nein, das meinte cooky (hoffentlich) eher als Scherz.

    Ne das war kein Scherz

    Dann war es ein Fail. C++ war schon vor C++11 besser als Malbolge oder C. 😉



  • Mir ist auch unklar wie man ohne move-semantics vernünftige Programme schreiben konnte. Und bind statt Lambdas ist einfach nur grausam.



  • nwp3 schrieb:

    Mir ist auch unklar wie man ohne move-semantics vernünftige Programme schreiben konnte. Und bind statt Lambdas ist einfach nur grausam.

    Ich mag bind . Nur die Fehlermeldungen bei falscher Benutzung sind grausam.


Anmelden zum Antworten