C++ support in Visual Studio 2013
In the past, Microsoft has frequently been criticised for delays in supporting language features in recent C/C++ standards. Of particular note is support for C99 and C++98, which is still not fully implemented and, with priority being given to C++11 and its successor C++14, likely to remain that way. In the case of C++11, released nearly two years ago, it does at least appear that Visual Studio 2013, due for release at the end of this year, will support the most important features of the current version of the language standard.
At the BUILD conference, it was announced that the preview of the development environment, which has now been released, does implement most new language functions. Other compiler infrastructures such as GCC and LLVM have only recently completed full support for all C++11 features. It could be some time before Microsoft reaches this milestone – at least there is no specific information available on when this will be achieved.
Microsoft's Herb Sutter, who chairs the C++ standardisation committee, has, however, promised that Microsoft will fully implement C++14. The next version of the language standard is more of a reworking of features introduced in C++11, with some details still to be finalised. The next major release of the language is likely to be C++17.
Microsoft is also planning to implement the async and await keywords introduced in C# 5.0, which allow the result of a function call to be referenced in code even though the result will not be available until some future point in time. These are not part of the C++ language specification and implementation may occur after Visual Studio 2013 is released.
The preview version of Visual Studio 2013 is provided with a "Go Live" license, allowing Microsoft developers to use the beta version for production development.