views:

138

answers:

1

Is there a reference somewhere concerning all the C++ extensions the VC9 (SP1) compiler has?

Examples would be the __declspec stuff, variadic macros and the compiler intrinsics, although there are also some less noticeable ones like being able to have template function specialisations at class scope, whereas apparently the standard says they cant be (Previous Question).

This includes whatever parts of C99, TR1, C++0X, etc. which are supported. Information regarding VC10 would b e useful as well, I know it has some parts of C++0X, but what else?

I've found bits and pieces on MSDN, but not an actual list which makes it impossible unless I know the name of the extension, or at least enough information regarding it (i.e. what it does).

+1  A: 

Visual Studio 2010 Beta2 new language features are documented here. You can see the language reference sections for C and C++ as well.

There are equivalent nodes in msdn for VS2008, but I'm more familiar with VS2010.

For reference the new C++0x language features in VS2010 are:

  • auto keyowrd
  • lambda expressions
  • rvalue references
  • static_assert declaration
  • decltype operator
  • nullptr and __nullptr keywords

There are multiple new library additions in VS 2010 as well, but you'll need to check the documentation for specifics, but examples are:

  • algorithm has been updated for all_of, any_of, none_of
  • exception_ptr and rethrow_exception are both included now.
  • updates to the stl for rvalue references
  • Parallel Pattern Library and Asynchronous Agents Library and Concurrency Runtime

-Rick

Rick