Vorschlag: C++0x-Tag
-
Es gibt ja den Code-Tag für C++/CLI und C/C++.
Da im C++-Forum jetzt vermehrt auch 0x-Code gepostet wird, wäre evtl. ein extra C++0x-Tag angebracht. Zum Einen sieht man dann gleich, dass der Ersteller kein C++03 schreibt und man sich auf älteren Compilern das compilieren sparen kann. Zum Anderen funktionieren einige highlights/keywords von 0x im C/C++ tag nicht richtig:alignas continue friend register true alignof decltype goto reinterpret_cast try asm default if return typedef auto delete inline short typeid bool do int signed typename break double long sizeof union case dynamic_cast mutable static unsigned catch else namespace static_assert using char enum new static_cast virtual char16_t explicit noexcept struct void char32_t export nullptr switch volatile class extern operator template wchar_t const false private this while constexpr float protected thread_local const_cast for public throw
-
Lieber den C++-Tag so machen, daß er C++0x kann.
-
volkard schrieb:
Lieber den C++-Tag so machen, daß er C++0x kann.
Und einen separaten C-Tag. Leider ist [c] schon vergeben :(.
-
[c99]restrict _Complex _Bool[/c99]
Oder gleich c1x
-
volkard schrieb:
Lieber den C++-Tag so machen, daß er C++0x kann.
+1
rüdiger schrieb:
Und einen separaten C-Tag.
+1
-
Wenn ich den C++-Tag 0x-fähig mache und jemand nennt eine Variable dann "noexcept", dann meckert bestimmt wieder jemand wegen der falschen Einfärbung, weil "altes" C++ das ja noch darf...
-
Marc++us schrieb:
Wenn ich den C++-Tag 0x-fähig mache und jemand nennt eine Variable dann "noexcept", dann meckert bestimmt wieder jemand wegen der falschen Einfärbung, weil "altes" C++ das ja noch darf...
nullptr
hat ja auch schon Highlight und in C++03 geht das.
-
Marc++us schrieb:
Wenn ich den C++-Tag 0x-fähig mache und jemand nennt eine Variable dann "noexcept", dann meckert bestimmt wieder jemand wegen der falschen Einfärbung, weil "altes" C++ das ja noch darf...
Soll er ruhig mal machen. Dann kriegt er erklärt, daß wir so furchbar fortschrittlich sind, daß wir schon von C++0x ausgehen. Außerdem ist unser Blaumachen ein supi Hinweis, daß er die Variable schleunigst umnennen soll, damit er seinen Compiler später mal updaten darf.
-
PS: ich denke, ich habe die beiden Schlüsselwörter nur vergessen.
-
Wenn wir gleich dabei sind, wie wäre es mit einem Update der C# Keywords? Es fehlen vor allem viele Kontextsensitive Schlüsselwörter (2. Absatz), welche mit späteren Versionen dazukamen.
abstract as base bool break byte case catch char checked class const continue decimal default delegate do double else enum event explicit extern false finally fixed float for foreach goto if implicit in int interface internal is lock long namespace new null object operator out override params private protected public readonly ref return sbyte sealed short sizeof stackalloc static string struct switch this throw true try typeof uint ulong unchecked unsafe ushort using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var where yield
Vor allem das Fehlen von
var
,get
undset
ist recht störend, weil die Schlüsselwörter sehr oft auftauchen.dynamic
könne in Zukunft auch etwas öfters anzutreffen sein. Der Rest ist von LINQ. Ich persönlich sehe da mehr die Extension-Methods Version und weniger die Schlüsselwörter. Aber wäre natürlich auch nicht schlecht, wenn die dazukommen.Grüssli
-
rüdiger schrieb:
Und einen separaten C-Tag. Leider ist [c] schon vergeben :(.
Gefällt mir sogar noch besser
-
Um mich an Draveres Vorschlag dranzuhängen.. die Compilerdirektiven #if usw. werden beim cs-Tag auch nicht so 100% korrekt umgesetzt: http://www.c-plusplus.net/forum/p2061148#2061148