C++ Team Blog
The latest in C++, Visual Studio, VS Code, and vcpkg from the MSFT C++ team
Latest posts
Announcing the VC++ 2015 Migration Virtual Development Laboratory
The Visual C++ Team is pleased to announce the VC++ 2015 Migration Virtual Development Laboratory (Virtual DevLab) which will run from April 18th through September 30th of this year. A Virtual DevLab is a kind of remote assistance where Microsoft's Visual C++ Team will help you with questions and code inspection. Most of the time will be spent helping you port your C++ codebase to Visual Studio 2015, so please consider participating if you are looking to migrate to VS2015. The Virtual DevLab is free. For each Virtual DevLab, we will organize a series of video or audio calls with screen sharing in order for ...
Optimizing the Layout of Empty Base Classes in VS2015 Update 2
The C++ Standard has only a handful of requirements regarding how a class is laid out in memory, one of which is that the size of a most derived object shall have a non-zero size and shall occupy one or more bytes of storage. Because this requirement only extends to most derived objects, base class subobjects are not subjected to that constraint. Taking advantage of this liberty in the standard is commonly referred to as the Empty Base Class Optimization (EBCO), and results in reduced memory consumption, which can improve performance. The Visual C++ compiler has historically had limited support for EBCO; howev...
UserVoice Suggestions Completed in Visual Studio 2015
We continue to receive many helpful suggestions and comments from the community on the Visual Studio UserVoice site. Your contributions help us improve Visual Studio and the C++ experience for developers. Thank you. The following suggestions were marked as "completed" for Visual Studio 2015 (up to Update 2 RC): Try out the preview now. Thank you!
Developing C++ cross-platform projects with CMake?
Do you develop cross-platform C++ applications or libraries? In this short survey, the Microsoft Visual Studio team would like to learn more about your current edit-build-debug experience. This survey will help us understand your needs and preferences when doing C++ development using CMake (or any other cross-platform tools). Your feedback is important to us so let us know your thoughts! Thank you.
Stuck on an older toolset version? Move to Visual Studio 2017 without upgrading your toolset
⏱ Updated on March 11, 2019 with the latest functionality in Visual Studio 2017 Are you currently developing your C++ projects in an older version of Visual Studio? If your reasons for avoiding the all-new features in VS 2017 are covered next, then read on: this post may have good news for you. Help! I am stuck! There are many reasons why you may want to use Visual Studio 2017 in your day-to-day job. Just to name a few: You can download Visual Studio 2017 and upgrade your projects today. We know however that there are projects for which a full upgrade is not a trivial decision. ...
New Options for Managing Character Sets in the Microsoft C/C++ Compiler
The Microsoft C/C++ compiler has evolved along with DOS, 16-bit Windows, and 32/64-bit Windows. Its support for different characters sets, code pages, and Unicode has also changed during this time. This post will explain how our compiler has worked in the past and also cover some new switches provided by the C/C++ compiler in Visual Studio 2015 Update 2 CTP, specifically support for BOM-less UTF-8 files and controlling execution character sets. Please download this and try it out. For information on other compiler changes in Update 2, check out this post. There are some great resources online that describe Un...
Try out the latest C++ compiler toolset without waiting for the next update of Visual Studio
Updated 22 Apr 2016: The NuGet package is now being uploaded daily. The payload doesn't change every day but you should see new bug fixes and/or feature updates every five days or so. See the blog post announcement here: https://blogs.msdn.microsoft.com/vcblog/2016/04/26/stay-up-to-date-with-the-visual-c-tools-on-nuget. Last November we announced a prerelease of the Visual C++ Build Tools, a standalone C++ installer for build environments. We asked you for feedback on the experience and truly appreciate the great response we got in blog comments and through other channels. We'll be updating the VC++ Build Tools s...
Do You Develop Games?
Or have you worked on a game recently? If so, please share some details about your experience. The Microsoft Visual Studio team would like to learn more about your current game development experience. The survey should take less than ~10 minutes. Thank you!
Natvis for C++/CLI Available in VS2015
This post details how to enable the feature in VS2015 Update 2. The recommended way of getting this feature is now to install VS2015 Update 3 which supports it by default. In Visual Studio 2012 the native debugger significantly improved with the addition of native visualizers (natvis) as part of a major debug engine overhaul. Adding C++/CLI code to your project would trigger the debugger to use our old debugging infrastructure as the new debugging infrastructure lacked support for C++/CLI. We’ve heard your feedback and we’re happy to announce the first preview of the new debugging experience in Update 2 that c...