Neue Infos zum ISO-C++0x Standard
-
Herb Sutter (Vorsitzender des ISO-C++ Komitees und C++ Architect bei Microsoft) hat in seinem Blog zusammengefasst, wie es nun konkret mit der Realisierung von ISO-C++0x weiter geht. Bzw. was überhaupt noch gemacht werden muß, damit 0x kein Hexwert wird, sondern eine 09 draus wird.
http://herbsutter.spaces.live.com/blog/cns!2D4327CC297151BB!159.entry
2007 soll schon der erste Entwurf für die Öffentlichkeit verfügbar sein! Seit 1997 wird es zum ersten Mal wieder ein Juli-Meeting geben (bisher immer nur April und Oktober). 2008 soll der Entwurf einen Feinschliff bekommen, da mit Änderungs-/Verbesserungswünschen aus der Öffentlichkeit zu rechnen ist, und 2009 würde man den endgültigen Entwurf bei der ISO einreichen. Herb Sutter sagt auch, das das ISO meistens ein Jahr benötigt, bis es einen eingereichten Standard veröffentlicht. Evtl. kommt also das nächste ISO-C++ deshalb offiziell erst 2010.
Was wird es auf jeden Fall für bedeutende Neuerungen in ISO-C++0x geben?
- Concepts
- Garbage Collection (optional für den Programmierer, aber der Compiler muß es anbieten!)
- Neues Speichermodell für Threads
- Basis-Threading-Funktionalitäten, eine umfangreichere Threading-Library wird es im TR2 geben
Was wird es nicht geben, weil es den ISO-C++0x-Standard zeitlich verzögern würde? (wird aber vom Komitee für eine nachfolgende C++-Version weiter verfolgt)
- Neues Module-Build-Konzept (ähnlich den Packages aus Java)
- Dynamische Libraries (Shared Libs)
So, wann sind die nächsten C++ Meetings?
- Jan 22-24, Batavia, IL, USA: Ad-hoc subgroup meeting on library working group issue cleanup.
- Feb 22-23, Mountain View, CA, USA: Ad-hoc subgroup meeting on concepts.
- Apr 15-20, Oxford, UK: Full WG21/J16 spring meeting.
- Jul 15-20, Toronto, Canada: Full WG21/J16 extra meeting.
- Sep 29 - Oct 6, Kona, HI, USA: Full WG21/J16 fall meeting. (Extended to Saturday.) Goal: Vote out the first complete public review draft of C++0x on Oct 6.
Na, ich finde das sieht doch schon alles spannend und vielversprechend aus.
-
Hoffentlich lebt Herb Sutter noch möglichst lange.

-
Weißt du zufällig, was aus Delegates/Closures geworden ist? Die vermisse ich ständig und sie wären ja recht einfach zu implementieren, aber zzt. muß man ja entweder auf extreme Workaroundlösungen (z.B. die von Don Clugston) oder compilerspezifische Features zurückgreifen

-
Habe selbst nie Delegates gebraucht bzw. benutzt (in Java gibts die auch nicht). Kann mir also darunter im praktischen Sinn nichts wirklich vorstellen. Habe zwar was darüber gelesen, wüsste aber nicht, warum man da in C++ Tricksen müsste? Weil es gibt solche Konzepte für C++, auch wenn sie sich nicht Delegates schimpfen. Aber ich denke mal, das du das mit functions aus dem TR1 nachbilden kannst? Das ist ja Standard mittlerweile. Wenn du keine TR1-Implementierung hast, kannst du auch erstmal http://www.boost.org/doc/html/function.html benutzen, ist das gleiche.
Wenn das nicht ausreicht, kannst du vielleicht auch Signals verwenden? Die benutze ich gerne, da sie sehr leistungsfähig sind:
http://www.boost.org/doc/html/signals.html
Alternative:
http://libsigc.sourceforge.net/Alle drei funktionieren ohne Trickserei, sondern mit ganz legalem C++-Code. (die haben nichts mit Qt-Signals zu tun)
Falls ich völlig daneben gegriffen habe, habe ich Delegates überhaupt nicht verstanden.

-
Für alle, die das im Detail interessiert, was der TR1 bietet - also mit in den neuen Standard übernommen werden soll, gibt's bei Scott Meyers eine Link-Liste zu den einzelnen Themen.
Gruß
Werner