About UsCommunityTrainingContent DevelopmentContact

Blogs
Pluralsight
Course Schedule
Scott Allen
Craig Andera
Mark Baciak
Don Box
Keith Brown
John CJ
Tim Ewald
Jon Fancey
Jon Flanders
Vijay Gajjala
Kirill Gavrylyuk
Ian Griffiths
Martin Gudgin
Jim Johnson
John Justice
Mike Henderson
Joe Hummel
Matt Milner
Ted Neward
Fritz Onion
Brian Randell
Jeffrey Schlimmer
Aaron Skonnard
Dan Sullivan
Herb Sutter
Doug Walter
Jim Wilson
Mike Woodring

My Links
Home
Contact
Login

Blog Stats
Posts - 50
Stories - 0
Comments - 146
Trackbacks - 40

.NET Bloggers
Chris Brumme(rss)
Don Box(rss)
Joel Pobar(rss)

VC++ Bloggers
Andy Rich(rss)
Brandon Bray(rss)
Stan Lippman(rss)

Archives
Dec, 2006 (1)
Aug, 2006 (2)
Jul, 2006 (1)
Jun, 2006 (1)
May, 2006 (1)
Mar, 2006 (2)
Feb, 2006 (2)
Jan, 2006 (1)
Dec, 2005 (1)
Oct, 2005 (2)
Sep, 2005 (2)
Aug, 2005 (1)
Jul, 2005 (1)
Jun, 2005 (2)
Apr, 2005 (2)
Mar, 2005 (2)
Feb, 2005 (3)
Jan, 2005 (3)
Dec, 2004 (2)
Nov, 2004 (4)
Oct, 2004 (14)


Concurrency, C++, and .NET, oh my!

The ISO C++ committee met in Berlin from April 2-7, 2006. I thought I'd write a quick note about highlights of what was decided for C++0x:
 
How to get meeting minutes
 
First, how to find out for yourself: The minutes of each meeting are usually available online about 2-3 weeks after the meeting. The easiest way to find WG21 minutes for a given meeting/year is to Google for "wg21 <year> minutes," in this case "wg21 2006 minutes." One of the first results is:
 
  Minutes of J16 Meeting No. 42/WG21 Meeting No. 37, April 3-7, 2006
  http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2006/n1993.html
 
BTW, in general, the easiest way to find any WG21 doc is to Google for "wg21 <doc number>". That's what I always do, because it's quicker than navigating my own hard drive even though I know where the doc is.
 
 
What got voted into the C++0x working draft
 
At this meeting, five major pieces of work got approved into the draft. That means these features can (and likely will) still get tweaked and changed until the standard is actually finalized and published, but the upshot of being voted into the working paper is that these features are "for real" -- they've been discussed and debated, consensus has been achieved on their specification, actual wording written up in standardese, and a full committee vote passed to stick the standardese into the working paper.
 
Nearly all of the Library Technical Report (aka TR1)
The only part that wasn't voted in was the special mathematical functions, which are of interest principally only to heavy-duty scientists and mathematicians. The actual TR is in the process of publication, but you can find a nearly-final version on the ISO C++ committee website here: N1836, Draft Technical Report on C++ Library Extensions.
 
Auto type deduction
This permits you to write declarations like
 
  auto x = 3.1415926535;
  auto i = container.begin();
 
where the type is deduced from the initializer. So in this case, x has type double, and i has type map<string,unordered_map<int,tupe<float,string,const int> > >::const_iterator or whatever the right type happens to be, without having to spell it out. The paper is: N1984, Deducing the type of variable from its initializer expression (revision 4).
 
Delegating constructors
This proposal was written by me and Francis Glassborow. It's a combined WG21 / C++/CLI proposal, though it was cut from the first edition of C++/CLI; if C++/CLI does add this it will follow this that WG21 has adopted (plus any future tweaks). The paper is: N1986, Delegating Constructors (revision 3).
 
Right angle brackets
This fixes a tiny but perniciously annoying and embarrassing quirk of C++, and the fix adopted by C++ is the same that C++/CLI specified. Right angle brackets have been fixed so that constructions Like<This<Nested<Template>>>> will work sensibly, without having to write the closing right angle brackets with extra whitespace Like<You<Must<Today>  >  >  > which is annoying, embarrassing, and suspected of contributing to dental decay among 18- to 24-year-olds in northeastern Mississippi. To find out more, see the paper: N1757, Right Angle Brackets (Revision 2).
 
Extern template
 

Enjoy! And there's more to come when we meet next, in October 2006 (Portland, OR, USA).
 
Herb
 
posted on Wednesday, May 03, 2006 6:19 PM


 
   
 
© 2004 Pluralsight.
Visual Design by Studio Creativa
Privacy Policy