5 Stimmen

Haben Sie schon mit C++0x begonnen?

Die meisten Compiler unterstützen bereits C++0x . Haben Sie mit der Verwendung von C++0x begonnen oder warten Sie auf die Definition von x? Ich muss meinen Code überarbeiten; sollte ich mit der Nutzung der neuen Funktionen beginnen?

8voto

Silfverstrom Punkte 26486

C++0x ist noch kein fertiger Standard. Es ist wahrscheinlich, dass es noch viele Überarbeitungen geben wird, bevor ein international anerkannter Standard veröffentlicht wird. Es hängt also alles davon ab, wofür Sie den Code schreiben? Wenn es sich um einen Arbeitsauftrag handelt, würde ich bei regulärem C++ bleiben, auf den Standard warten und der Programmiergemeinschaft die Zeit geben, die sie braucht, um sich anzupassen. Refaktorieren Sie keinen Code, den Sie unbedingt implementieren müssen, das könnte Ihnen eine Menge Ärger bereiten.

Ich finde C++0x jedoch großartig, um damit herumzuspielen, und es kann auch nicht schaden, mit der Syntax vertraut zu sein, wenn 0x global akzeptiert wird.

4voto

James Hopkin Punkte 13389

Ich habe begonnen, die nullptr , mit #define nullptr 0 für diejenigen Compiler (d.h. die meisten), die dies noch nicht unterstützen.

4voto

beef2k Punkte 2223

Aus dem Link, den Sie angegeben haben, geht hervor, dass Sie eigentlich Folgendes meinen TR1 , nicht wirklich C++0x. Und ja Ich verwende die meisten der neuen TR1-Bibliotheken schon seit einiger Zeit, da viele von ihnen ehemalige Boost Bibliotheken.

Und ich kann nur jeden ermutigen, sie auch zu nutzen.

3voto

Todd Gardner Punkte 13073

Ich würde mit dem Schreiben von Produktionscode warten, bis '0x+y, wobei y bedeutet, dass sie die Bugs aus dem Compiler herausarbeiten und ihn in die Standardkompatibilität bringen (was auch immer der Standard sein mag).

Aber für die Entwicklung? Ich benutze es zum Herumspielen, Schreiben projekt euler usw. Ich verwende es auch für Präsentationen und Newsgroups.

3voto

Artyom Punkte 29856

Es gibt nur sehr wenige Compiler, die etwas unterstützen. Eigentlich VS unterstützt nur TR1-Bibliotheken, gcc unterstützt einige Funktionen wie variadic templatres, rvalue, auto und einige mehr. Intel Compiler hat einige.

Ich habe vor allem mit variablen Vorlagen wie:

#ifdef HAvE_VARIADIC
template<typename... Args>
void format(std::string,Args... args);
#else
template<typename T1>
void format(std::string,T1 p1);
template<typename T1,typename T2,>
void format(std::string,T1 p1,T2 p2);
...
template<typename T1,typename T2,...,typename T10>
void format(std::string,T1 p1,T2 p2,..., T10 p10);
#endif

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X