C++ Is Focus of New Visual Studio 2019 v16.7 Preview 2
C++ development is a focus point of the new Visual Studio 2019 v16.7 Preview 2, featuring a slew of tweaks and improvements touching upon remote SSH connections, IntelliSense support and more.
With Visual Studio 2019 developers build and debug C++ projects on a remote Linux system or the Windows Subsystem for Linux (WSL). C++ coders can get started with Linux development in Visual Studio via MSBuild-based Linux projects or native support for CMake, which allows developers to use the same source code and build scripts to target multiple platforms and which is Microsoft's recommended approach for cross-platform development or for open-sourcing projects.
Here's a summary of what's new for C++:
- New C++20 Standard Library features: More details are in the STL Changelog on GitHub.
Remote SSH connections: These enable developers to build and debug C++ projects on a remote Linux system directly from the IDE. C++ coders can now edit and set default remote SSH connections in the Connection Manager. This means, for example, if a connection's IP address changes, developers can edit and update it. Also new is the ability to set default connections to be consumed in CMakeSettings.json and launch.vs.json. This is useful for checking CMakeSettings.json and launch.vs.json into source control without user or machine-specific information.
Enhanced IntelliSense support: This applies to Clang on Windows (clang-cl) in Visual Studio. Specifically:
- The clang include path now includes the clang libraries.
- In-editor squiggle displays when using the std library have been improved.
- Support for C++2a in clang mode has been added.
- C++ project errors and quick fixes: Developers can now try out underlining code errors and see more suggested quick fixes, functionality that is enabled via
Tools > Options > Environment > Preview Features > IntelliSense code linter for C++. This feature to help C++ developers identify and fix code defects as they write code was announced in March.
- New code analysis rules: These provide more safety features. They include: C26817, C26818, C26819, and C26820. Please see the C++ Team Blog for more info.
The C++ team provides more details on the above and other improvements in a June 2 blog post.
But it's not all about C++ in the new update, as productivity for .NET (Quick Info now displays the diagnostic ID along with a help link)and Git (merge conflict resolution) was also boosted.
Another new preview feature is Local Process with Kubernetes. It lets coders write, test and debug .NET microservices code on a development workstation while connected to a Kubernetes cluster with the rest of an application or services.
More details on all of the above and more are provided in the Visual Studio 2019 v16.7 Preview 2 announcement post and release notes.
David Ramel is an editor and writer for Converge360.