C++ Team Blog

The latest in C++, Visual Studio, VS Code, and vcpkg from the MSFT C++ team

Improving the State of Debug Performance in C++

In this blog we will explore one change the MSVC compiler has implemented in an effort to improve the codegen quality of applications in debug mode. We will highlight what the change does, and how it could be extended for the future. If debug performance is something you care about for your C++ projects, then Visual Studio 2022 version 17.5 is...

Moving a project to C++ named Modules

There is a lot of hype (and perhaps restraint) to using modules in projects. The general blocker tends to be build support, but even with good build support there is a distinct lack of useful resources for practices around moving projects to using named modules (not just header units). In this blog we will take a small project I created, ...

Standard C++20 Modules support with MSVC in Visual Studio 2019 version 16.8

Please see our Visual Studio 2019 version 16.8 Preview 3 release notes for more of our latest features. It has been some time since our last update regarding C++ Modules conformance. The toolset, project system, and IDE teams have been hard at work to create a first class C++ Modules experience in Visual Studio 2019. There is a lot to share...

Simplify Your Code With Rocket Science: C++20’s Spaceship Operator

This post is part of a regular series of posts where the C++ product team here at Microsoft and other guests answer questions we have received from customers. The questions can be about anything C++ related: MSVC toolset, the standard language and library, the C++ standards committee, isocpp.org, CppCon, etc. Today's post is by Cameron ...

Announcing: MSVC Conforms to the C++ Standard

Achieving conformance with the C++ Standards has been a long road for the Visual C++ team. If you've seen us at any conferences lately, you've probably seen the MSVC Conformance slide. (You can grab a copy of the slide or watch the 2017 CppCon talk here.) Finishing the features on this slide – which includes features from C++11, C++14, and C...