C++ Team Blog
The latest in C++, Visual Studio, VS Code, and vcpkg from the MSFT C++ team
Latest posts
C++ Core Check improvements in Visual Studio 2017 15.5
点这里看中文版 This post was written by Sergiy Oryekhov. In Visual Studio 2017 version 15.5 Preview 4 we have refreshed our C++ Core Guidelines Check extension for native code static analysis tools. Most of the work since 15.3 has been focused on new rules that will help developers starting new projects write safer C++ and those with legacy projects move toward safer, modern C++. For those who are new to the core guidelines checks, we recommend to review the latest version of the working draft: "C++ Core Guidelines". This article provides an overview of the changes in VS2017 15.5. For more information about the curr...
Side-by-side minor version MSVC toolsets in Visual Studio 2017
We've been delivering improvements to Visual Studio 2017 more frequently than ever before. Since its first release in March we've released four major updates to VS2017 and are currently previewing the fifth update, VS2017 version 15.5. The MSVC toolset in VS2017 is built as a minor version update to the VS2015 compiler toolset. This minor version bump indicates that the VS2017 MSVC toolset is binary compatible with the VS2015 MSVC toolset, enabling an easier upgrade for VS2015 users. Even though the MSVC compiler toolset in VS2017 delivers many new features and conformance improvements it is a minor version, c...
Visual Studio Code C/C++ extension Nov 2017 update – Multi-root workspaces support is here!
This week has been very exciting for the Visual Studio Code C/C++ extension! It crossed 4 million downloads earlier this week only 18 months after its first release! Today, we are shipping the November 2017 update, which enables the extension to work with multi-root workspaces seamlessly, making VS Code an even more powerful C/C++ development environment. Multi-root workspaces support VS Code 1.18 and later provides multi-root workspaces support, which allows users to work with multiple project folders in VS Code. This can be very useful when you are working on several related projects at the same time. With the ...
Completed UserVoice Suggestions in Visual Studio for C++ developers
If you regularly follow our blog, you may have noticed that our posts encourage you to submit your suggestions on how to improve Visual Studio in UserVoice. We spend a lot of time reviewing your suggestions and incorporating them into our planning for future releases. In this post, we'd like to give you an update on what suggestions we have recently marked as Complete. This list comes as an addendum to the list of completed UserVoice suggestions in Visual Studio 2017 that we announced when Visual Studio 2017 released earlier this year. The list has 19 completed suggestions, totaling 1458 votes! Did you make any ...
Visual Studio Build Tools now include the VS2017 and VS2015 MSVC Toolsets
点这里看中文版 The Visual C++ Build tools have been a huge success since we introduced them two years ago. The C++ Build Tools were originally released as a standalone installer that only laid down the tools required to build C++ projects without installing the Visual Studio IDE. Many developers have found them useful in environments that don't require a full VS install such as build servers or CI systems. The tools are always kept up-to-date, shipping only the latest supported version of the MSVC compiler toolset. With Visual Studio 2017's new, flexible installer we were able to move away from our custom C++ Buil...
Customizing your Environment with Visual C++ and Open Folder
点这里看中文版 Ever since we shipped support for opening a folder of C++ code, the community has been asking for more control over their build and editing environments. To achieve this, we have added new ways to customize your environment with CppProperties.json in the latest version of Visual Studio 2017. This new customization surface enables you to use a broader variety of tools, write more succinct CppProperties files, and have powerful per-configuration customization similar to MSBuild. The topics below expand on several concepts described in the original C++ Open Folder post. If you are not familiar with ...
Unit Testing: Test Adapter for Boost.Test goes in-box!
If you're just getting started and want to learn more about C++ Unit Testing, check out our tutorial. We're back at it again with the built-in unit test framework support! Last week we announced Visual Studio is shipping with Google Test support. This week, we are excited to reveal that Visual Studio now ships with Boost.Test support. As of Visual Studio 2017 15.5 Preview 3, you can write, discover, and run all of your Boost.Test unit tests using Visual Studio's testing tools right out of the box. New installations of Visual Studio will install Boost.Test by default; however, if you are upgrading from a previou...
C++/WinRT is now included the Windows SDK
If you write code for the Universal Windows Platform you're familiar with the C++/CX language extensions. These extensions let the compiler create "language projections" for the Windows Runtime (WinRT). Language projections encapsulate the underlying WinRT APIs so that they can be called in a natural fashion. The C++/WinRT project creates these language projections in standard C++ code. Using C++/WinRT previously required that you clone their repo from GitHub. C++/WinRT is now included in build 17025 of the Windows SDK Insider Preview. You can read more about this release of C++/WinRT on the moderncpp blog....
CMake Support in Visual Studio – Import Your CMake Cache
点这里看中文版 Configuring a CMake project to build in just the way you want can often be a time intensive process, so in Visual Studio 2017 15.5 preview we have made it easier than ever to import your existing CMake projects and cache configurations into the IDE. You can now import an existing CMakeCache.txt file and Visual Studio will automatically extract customized variables and create a pre-populated CMakeSettings.json file based on them. Please check out the preview and try out the latest CMake features. If you are just getting started with CMake, follow the link to learn more about CMake support in Visual Stu...