C++ Team Blog

C++ tutorials, C and C++ news, and information about Visual Studio, Visual Studio Code, and Vcpkg from the Microsoft C++ team.

STL Visualizers on GitHub
STL Visualizers on GitHub
We are happy to announce that now it’s possible to contribute to the STL Visualizers for Visual Studio's debugger on GitHub. A visualizer is a file with .natvis extension that allows you to manipulate the way native types appear in the debugger's watch window.  We've been working on fixing existing issues with the visualizers ...
Address Sanitizer Now in “Early Release” for Xbox Developers
Address Sanitizer Now in “Early Release” for Xbox Developers
Address Sanitizer is now available on Xbox, developers can leverage this powerful technology to help debug memory issues in their titles.  Combined with the crash dump changes detailed here, it should provide all the flexibility required to support your automated tests suites and enable you to find issues quickly and easily.
<format> in Visual Studio 2019 version 16.10
<format> in Visual Studio 2019 version 16.10
C++20 adds a new text formatting facility to the standard library, designed primarily to replace snprintf and friends with a fast and type safe interface. The standardized library is based on the existing {fmt} library, so users of that library will feel at home. Before diving into how std::format works I want to thank Victor Zverovich, ...
Preview of using CMake Presets for Azure Sphere development
Preview of using CMake Presets for Azure Sphere development
We are happy to announce that CMake Presets preview support is available in the Visual Studio 16.10 release as well as CMake Tools version 1.7 for Visual Studio Code. Erika introduced CMake Presets and why you should use them, this post will focus on how they can be used for Azure Sphere development across Visual Studio, VS Code, and GitHub...
C++20 Ranges are complete in Visual Studio 2019 version 16.10
C++20 Ranges are complete in Visual Studio 2019 version 16.10
We are proud to announce completion of our implementation of C++20 Ranges in the Standard Library in the VS2019 v16.10 release under/std:c++latest. We announced the first useful user-visible parts of Ranges in VS 2019 v16.6 in mid 2020, the trickle accelerated into a gushing stream, and the final parts are now in place. This represents a huge ...
How to start using registries with vcpkg
How to start using registries with vcpkg
For many users of vcpkg, the built-in repository of packages is completely sufficient. If you only need public, non-experimental libraries, the default vcpkg registry is completely fine. However, once you go outside of this world - once you have company-internal libraries, or you want to use experimental libraries, the recommended solution is ...
All vcpkg enterprise features now generally available: versioning, binary caching, manifests and registries
All vcpkg enterprise features now generally available: versioning, binary caching, manifests and registries
We are announcing today that all major vcpkg enterprise features are no longer experimental. The latest vcpkg release makes versioning, binary caching, manifests and registries generally available to any developer, team or enterprise. We have steadily been adding to vcpkg over the years. What started as a small open source project to ...
Microsoft C++ Code Analysis supports SARIF 2.1
Microsoft C++ Code Analysis supports SARIF 2.1
Starting with Visual Studio 16.8, MSVC Code Analysis officially supports SARIF 2.1.0 standard. SARIF is an industry standard for representing static analysis logs and we've been one of the earliest collaborators with the SARIF Technical Committee. Behind the scenes, analysis log files in the SARIF format powers Visual Studio IDE to ...