What's New in Visual Studio 11 Beta for C++ Developers

What's New in Visual Studio 11 Beta for C++ Developers

Rate This
  • Comments 44

 

XAML <TextBox x:Name="textbox"/>
C++
textbox->Text =
"Hello World!";
Output A Metro style HelloWorld.cpp

Snippets of the Metro style version for the most popular 101 application.

 

 

 

Download this Beta today:

 

 

 

As Jason Zander –CVP of Visual Studio- just confirmed, a Visual Studio 11 Beta was released earlier today.

What can C++ developers expect from this new version compared to Visual Studio 2010? Here's a summary:

  • Windows 8:
    • Support for Metro style apps using native C++ code.
    • C++ Metro style applications can create new UI using DirectX and/or the completely-new all-native XAML UI framework for Windows 8.
    • C++ developers can also create components that extend Windows 8 apps written in HTML5/JavaScript.
  • C++11:
    • New core language features: range-based for-loop, override/final, and strongly-typed/forward-declared enums.
    • More core language features to follow shortly after Visual Studio 11.
    • New Standard Library headers: <atomic>, <chrono>, <condition_variable>, <future>, <mutex>, <ratio>, <scoped_allocator>, and <thread>.  Also <filesystem>.
    • Emplacement methods have been implemented in all containers for "arbitrary" numbers of arguments.
    • Simulated variadic templates now accept a maximum of 5 arguments by default, down from 10.  To increase this limit, at the cost of compiler speed, define _VARIADIC_MAX project-wide between 5 and 10 inclusive.
    • Per-container and per-element memory consumption has been optimized.
  • Code Performance and Parallelism:
  • IDE Enhancements:
    • Code understanding enhancements like semantic colorization and reference highlighting.
    • Editing enhancements like proactive IntelliSense, member list filtering and code snippets.
  • Application Lifecycle Management (ALM):
    • Comprehensive tools like dependency diagrams and the Architecture Explorer.
    • Testing tools like a new Unit Testing Framework and Code Coverage.
    • Static Analysis for a better diagnosis of coding errors even if the compilation is okay.

 

For further information, these MSDN Library article dives deeper in these new features for Visual C++ developers.

 

 

Links of interest:

  • Installing VS 11 Ultimate Beta right now. Does a statically linked C++ executable run on XP now? I don't have a virtual machine with Windows XP installed to test it myself. There's been quite a lot of angry feedback about the CRT not running on XP.

  • Chris: no.

  • No veriadic templates and no code metrics for native C++ - that's unfortunate.

  • In this case I suggest that people vote on these links to make sure XP support is in RTM.

    connect.microsoft.com/.../690617

    visualstudio.uservoice.com/.../30937-languages-c

    About the beta. I like the new GUI theme. And I like the full C++ standard library. Just make the CRT run on XP in the RTM. And keep adding C++11 features with intermediate releases as promised. Good job.

  • Our users haven't dropped Windows XP, that means we can't either.  It has only been 2 1/2 years since Windows 7 came out.  Prior to that, a huge majority of our customer base was on XP.  Very few of them moved to Windows Vista.  We can't move to a new compiler until a larger percentage of our customers move to Windows 7.

  • I don't understand why people are complaining about lack of support for XP -- it has a simple workaround, install the Windows SDK 7.1 and instruct VS11 to use its toolchain.

    I'll admit that you lose some new functionality, but if you're migrating a VS2010 solution that targets XP you're not using the new functionality.

  • I also need my executables to run on XP so interested in the workaround that Kawahee suggests. Would this enable me to use the new C++11 features and still produce an XP compatible exe?

  • @Kawahee: I don't understand people like you who lack logic skills. The obvious reason for upgrading would be the new C++11 features. No one is going to upgrade just for the new IDE to end up using an older compiler.

    @Alistair: No, then you're limited to the features that VC++10 offers.

  • @Hmmm I guess I won't be using VS11 until a point in the distant future where all my customers use W7 or above.

    After all the talk of native code renaissance and C++11 by Microsoft they seen to have shot themselves in the foot with this decision.

    Some official comment/explanation on this blog would be nice.

  • One question - why XP is not supported? We can't drop XP support because it used by our customers. It is used by our customers, because it is supported by MS until 2014 (critical updates I mean. And there is an additional "extended support" after the date, but this is another story)

  • Tried the C++11 support, but sadly it is not adequate enough for our project, we get a lot of compile errors when trying this new C++ compiler on our code that now uses GCC 4.7

  • Congratulations. The first C++ IDE that is awesome. Feels snappier than VS2010 and colorization code is excellent (after some customization). It is very accurate. Reference highlighting is also a great improvement and fast like hell. I feel like I'm in the future :) I was always jealous about cool C# features (especially with extensions) because C# is easy to parse so everything is possible. But C++ editing is catching up at a rapid pace... If you combine VS11 with Visual Assist X (e.g. for refactoring), C++ development is now getting to be pretty awesome. Feels like that we, C++ coders are not second class citizens anymore.

    About the Windows XP vs. new compiler problem: MS is pushing its new OSes which is kind of understandable. They did the same decision about DirectX 10.0, in a time when XP was much-much more ubiquitous.

  • I don't think you can push new OSes by making the development tools generate code that doesn't run on XP. Most developers probably run Windows 7 anyway. This restriction doesn't affect the large XP userbase directly.

    Microsoft can't possibly expect every software company using their compilers to drop the XP userbase and help them in their quest to kill XP. Those companies would get less profit and simply won't do that. This really seems like a 'lose-lose' decision by Microsoft, all that's going to happen is the decrease in VS copies sold.

    Seriously, Microsoft, contact me - I'll be your business consultant. I'll make sure your income increases and that everyone is happy.

  • I think they are making the sacrifice to ensure XP dies swiftly. Targeting XP currently requires dropping / not using a lot of great windows vista and above features or writing forked code and is a pain in the ass in general.

  • Looks like the WRL documentation has been updated too, great!

Page 1 of 3 (44 items) 123