C++ Team Blog

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

Latest posts

Dec 19, 2017
Post comments count 0
Post likes count 0

C++17 Progress in VS 2017 15.5 and 15.6

Stephan T. Lavavej - MSFT

Dec 14, 2017
Post comments count 0
Post likes count 0

Image Watch is now available for Visual Studio 2017

Marian Luparu

点这里看中文版 Image Watch is a Visual Studio extension that provides a watch window for viewing in-memory bitmaps when debugging native C++ code. It comes with built-in support for OpenCV image types (e.g. cv::Mat, cv::Mat_<> , etc.). We know that, for many of you, this is an important part of your C++ debugging experience. We have received many requests to support this extension on Visual Studio 2017 via survey responses, blog comments and Reddit conversations. We’re happy to announce that Image Watch for Visual Studio 2017 is now available for download in Visual Studio Marketplace. Getting started with Op...

Dec 13, 2017
Post comments count 1
Post likes count 1

Broken Warnings Theory

Yuriy Solodkyy

Перевод статьи на русском The "broken warnings theory" is a fictional theory of the norm-setting and signaling effect of coding practices and bug-checking techniques in 3rd party libraries on new bugs and design anti-patterns. The theory states that maintaining and monitoring warning levels to prevent small problems such as "signed/unsigned mismatch", "no effect before comma", and "non-standard extension used" helps to create an atmosphere of order and lawfulness, thereby preventing more serious bugs, like buffer overruns, from happening. Visual Studio 2017 version 15.6 Preview 1 comes with new ways to make...

Dec 13, 2017
Post comments count 1
Post likes count 0

Android NDK R15C support goes in-box in Visual Studio 2017 Version 15.6 Preview

Rong Lu

Visual Studio has provided in-box support for building C++ Android and iOS apps or libraries since VS 2015, enabling cross-platform C++ mobile development with full editing and debugging capabilities all in one single IDE. Just recently, we updated the tools to make it easier for you to work with newer versions of the Android platform. This includes built-in support for Android SDK API level 25 that was shipped in VS 2017 Version 15.5 and support for Android NDK R15C that just went out last week in the first preview of VS 2017 Version 15.6. You can either download the Preview, or, if you already have it installe...

Dec 11, 2017
Post comments count 0
Post likes count 0

Visual Studio Code C/C++ extension Dec 2017 update – support for more Linux distros

Rong Lu

Happy holidays! Today we’re shipping the December 2017 update to the Visual Studio Code C/C++ extension – our last major update of this year, with out-of-box support for more Linux distros and built-in guidance on how to configure for a better IntelliSense experience. The original blog post, which provides an overview of this extension, has been updated with these changes. Support for all Linux distros that VS Code runs on The extension now works on all the Linux distros that VS Code runs on. Specifically, the following two scenarios are now supported: - The extension no longer requires GLIBC 2.18 as a dependenc...

Dec 8, 2017
Post comments count 0
Post likes count 0

C++17 Feature Removals And Deprecations

Stephan T. Lavavej - MSFT

Technology advances by inventing new ways of doing things and by discarding old ways. The C++ Standardization Committee is simultaneously adding new features and removing old features at a gradual pace, because we've discovered thoroughly better ways of writing code. While feature removals can be annoying, in the sense that programmers need to go change old codebases in order to make them conform to new Standards, they're also important. Feature removals simplify the Core Language and Standard Library, avoiding the doom of accreting complexity forever. Additionally, removing old features makes it easier to read a...

Dec 3, 2017
Post comments count 0
Post likes count 0

MSVC code optimizer improvements in Visual Studio 2017 versions 15.5 and 15.3

Gratian Lup

In this post, we’d like to give you an update on the significant progress the Visual C++ code optimizer made in the past year, focused mostly on the features released in the 15.3 and 15.5 versions. Compared to VS2015 Update 3, VS2017 15.5 provides on average an 8.9% increase in runtime speed in the SPEC 2017 benchmark (for detailed numbers see slide 12 from the CppCon presentation or the CppCon session video). The following sections of this post will go through some of the new optimizations and improvements that are being made available with the latest version, hopefully giving an interesting overview over the...

Nov 16, 2017
Post comments count 1
Post likes count 0

Improving the debugging experience for std::function

EricMittelette

[Update: This functionality is now enabled via the "Just My Code" feature in Visual Studio for any STL types or 3rd-party library types of your choosing. For more details, check out C++ Just My Code Stepping with Visual Studio blogpost] We received a Visual Studio User Voice suggestion to make "StepInto" go directly to user code, skipping past standard library (std::function) implementation details. We recently worked on this suggestion and implemented it in the last version of Visual C++. The issue: Single-stepping through a call to an instance of std::function was a particular pain point. When debugging, y...

Nov 15, 2017
Post comments count 0
Post likes count 0

MSVC conformance improvements in Visual Studio 2017 version 15.5

Andrew Pardoe

The MSVC toolset included in Visual Studio version 15.5 preview 4 includes many C++ conformance improvements. Throughout the VS2015 and VS2017 releases we've focused on conformance with C++ standards, including C++17 features. With VS2017 version 15.5, MSVC has implemented about 75% of C++17 core language and library features. These features can be enabled by using the /std:c++17 version switch. Note that some of these features were included in the 15.3 cycle and completed in the 15.5 cycle. We've also made significant progress on fix...