C++ Team Blog

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

Latest posts

May 7, 2019
Post comments count 9
Post likes count 0

New code analysis quick fixes for uninitialized memory (C6001) and use before init (C26494) warnings

eli fessler

In the latest Preview release of Visual Studio 2019 version 16.1, we’ve added two quick fixes to the Code Analysis experience focused around uninitialized variable checks. These quick fixes are available via the Quick Actions (lightbulb) menu on relevant lines, accessed by hovering over the line or squiggle, or by pressing Ctrl+Period. The first release of Visual Studio 2019 brought in-editor code analysis and various C++ productivity improvements, including a quick fix for the NULL to nullptr rule and others. In implementing further code analysis quick fixes, we are basing decisions on the following criteria:...

May 6, 2019
Post comments count 50
Post likes count 0

C++ with Visual Studio 2019 and Windows Subsystem for Linux (WSL)

Erika Sweet

This post was updated on December 11, 2020 Visual Studio 2019 version 16.1 added native support for using C++ with the Windows Subsystem for Linux (WSL). WSL lets you run a lightweight Linux environment directly on Windows, including most command-line tools, utilities, and applications. In Visual Studio you no longer need to add a remote connection or configure SSH in order to build and debug on your local WSL installation. This will save you time getting up and running in a Linux environment and eliminates the need to copy and maintain sources on a remote machine. In order to use our native support for WSL yo...

May 3, 2019
Post comments count 0
Post likes count 0

Visual Studio Code C/C++ extension: May 2019 Update

Tara Raj

The May 2019 update of the Visual Studio Code C/C++ extension is now available to C/C++ extension Insiders. This release includes many new features, including Visual Studio Code Remote Development extensions with C/C++, an IntelliSense Configurations settings UI, and IntelliSense improvements.

Apr 24, 2019
Post comments count 27
Post likes count 0

Clang/LLVM Support in Visual Studio

Will Buik

Visual Studio 2019 version 16.1 Preview 2 comes with support for Clang/LLVM out-of-the-box. Visual Studio has had great tooling for MSVC and GCC for quite a while now. The latest preview brings Clang into the fold. Visual Studio 2019 includes out of the box support for editing, building, and debugging CMake projects with Clang/LLVM. If you use MSBuild projects, however, don’t worry. Support for MSBuild based .vcxproj projects is coming soon as well. If you are not familiar with Visual Studio’s CMake, support check out how to get started. If you are developing on Windows and targeting Clang, we hope to make ...

Apr 24, 2019
Post comments count 4
Post likes count 0

Visual Studio CMake Support – Clang/LLVM, CMake 3.14, Vcpkg, and Performance Improvements

Will Buik

We’ve introduced a bunch of improvements to our CMake support in the latest preview of Visual Studio 2019 Update 1. The latest release includes Clang/LLVM support, CMake 3.14, better vcpkg integration, and many more enhancements. If you are not familiar with Visual Studio’s CMake support, check out how to get started.

Apr 24, 2019
Post comments count 3
Post likes count 0

Improved C++ IntelliCode now Ships with Visual Studio 2019

Nick Uhlenhuth

IntelliCode support for C++ previously shipped as an extension, but it is now an in-box component that installs with the “Desktop Development with C++” workload in Visual Studio 2019 16.1 Preview 2. Make sure that IntelliCode is active for C++ by enabling the “C++ base model” under Tools > Options > IntelliCode > General:    This version of C++ IntelliCode also supports free-functions and has better accuracy. You can see the IntelliCode results starred at the top of the member list:    Talk to Us!   We’d love for you to download Visual Studio 2019 version 16.1 Preview 2 and enable IntelliCode ...

Apr 23, 2019
Post comments count 2
Post likes count 0

Visual Studio C++ Template IntelliSense Populates Based on Instantiations in Your Code

Nick Uhlenhuth

Ever since we announced Template IntelliSense, you all have given us great suggestions. One very popular suggestion was to have the Template Bar auto-populate candidates based on instantiations in your code. In Visual Studio 2019 version 16.1 Preview 2, we’ve added this functionality via an “Add All Existing Instantiations” option in the Template Bar dropdown menu. The following examples are from the SuperTux codebase.  The Template Bar dropdown menu now contains a new entry, "Add All Existing Instantiations".    Clicking the “Add All Existing Instantiations” option will populate the dropdown, so yo...

Apr 19, 2019
Post comments count 32
Post likes count 0

C++17/20 Features and Fixes in Visual Studio 2019

Stephan T. Lavavej - MSFT

Visual Studio 2019 version 16.0 is now available and is binary compatible with VS 2015/2017. In this first release of VS 2019, we've implemented more compiler and library features from the C++20 Working Paper, implemented more overloads (C++17's "final boss"), and fixed many correctness, performance, and throughput issues. Here's a list of the C++17/20 compiler/library feature work and the library fixes. (As usual, many compiler bugs were also fixed, but they aren't listed here; compiler fixes tend to be specific to certain arcane code patterns. We recently blogged about compiler optimization and build throughpu...

Apr 19, 2019
Post comments count 2
Post likes count 0

Accelerating Compute-Intensive Workloads with Intel® AVX-512

Intel Corporation

This guest post was authored by Junfeng Dong, John Morgan, and Li Tian from Intel Corporation. Introduction Last year we introduced Intel® Advanced Vector Extensions 512 (Intel® AVX-512) support in Microsoft* Visual Studio* 2017 through this VC++ blog post. In this follow-on post, we cover some examples to give you a taste of how Intel® AVX-512 provides performance benefits. These examples include calculating the average of an array, matrix vector multiplication, and the calculation of the Mandelbrot set. Microsoft Visual Studio 2017 version 15.5 or later (we recommend the latest) is required to compile these d...