Visual Studio 2012 and .NET framework 4.5 became available on 15 August for MSDN subscribers, that can download it from here. Because the new features are discussed in detail in many places I will not attempt to enumerate everything. However, I just want to point some of the new things available for native development.
- more C++ standard support: includes strongly-typed enums, range-based for loops, stateless lambdas, override and final, as well as new STL headers (<atomic>, <chrono>, <condition_variable>, <filesystem>, <future>, <mutex>, <ratio>, <thread>)
- C++ compiler enhancements: auto-vectorizor and auto-parallelizer
- IDE: C++ code-snippets, semantic colorization and (the long awaited) C++/CLI IntelliSense
- parallel libraries: C++ AMP that allows us to write parallel programs that run on heterogeneous hardware, and new additions to the Parallel Patterns Library (especially in async programming)
- Windows 8 development: a native XAML framework allows writing apps for WinRT; that is also possible with DirectX (and the two can actually be mixed together)
- Unit test framework: allows you to write light-weight unit tests for your C++ applications
On the other hand there is not much done for MFC, that only benefits from a series of bug fixes. the only thing worth noting is reducing the size of statically-linked MFC applications that use “MFC controls”. You can read details about the problem and the solution here.
More about these can be found in the following articles:
- Visual Studio 2012 and .NET Framework 4.5 released to the web!
- Visual C++ in Visual Studio 2012
- What’s New in VS11 for Native Development
What you have to note is that at this point VS2012 has some limitations:
- You cannot target WinXP with this release
- There is no Express version that allows you to write native C++ apps (for the desktop)
However, Microsoft has promised to solve these with an upgrade later this autumn (but no dates have been disclosed). You can read about that here: