Updates to Visual C++ Include New Build Tool, Experimental Editor Tools
With Visual Studio 2015 Update 1 comes a few changes to the build tools as well as the addition of experimental tools in Visual C++.
Along with Visual Studio 2015 Update 1 comes a few changes to Visual C++ in regards to build tools as well as the addition of experimental tools that the VS team has been emphasizing in a series of blog posts.
A preview of the new build tool comes on the heels of developer feedback, and installs only the tools needed for building C++ projects, bypassing the need to install the Visual Studio IDE. "This new installer is meant to streamline the delivery of the C++ build tools in your build environments and continuous-integration systems," said Visual C++ Senior Program Manager Marian Luparu, in a blog post.
Luparu notes that the new installer installs the same components during the Update 1 setup, and then installs the C++ Build Tools-specific command prompts. "After the installation completes, the command prompt shortcuts will be located in "Microsoft Visual C++ Build Tools" under Program Files," writes Luparu, which shows a screen menu with shortcuts for various architecture-specific build tools. Since it's a preview, the team is looking for feedback, and is also working on ways to streamline this process even further.
Also announced a few weeks before the general VS 2015 Update 1 release is a more flexible memory profiling tool. "The new debug-time profiler runs during your debugging session and allows you to take snapshots anytime, such as at a breakpoint, and also view the heap contents during the current debugger break state," said Viisual C++ Program Manager Adam Welch, in a blog post. "This provides for a more precise and flexible experience when trying to analyze the heap state of your app.
Starting up the debugger in VS 2015, the developer will see a Diagnostics Tools window that will show a running app's CPU usage stats, memory usage, and debugging events. Under the Memory Usage tab is an option for toggling on Heap Profiling, which will activate heap snapshots even without having to restart the debugger. Developers can then drill down further into heap data by types, instances, or stacks.
Related to the debugger is an incremental improvement in the way Visual C++ debugs C++ access violations. "When writing C/C++ code it is common to deal with complex lines that utilize multiple pointers, for example dereferencing multiple pointers on a single line," writes Microsoft Program Manager Kaycee Anderson, in this blog post. "However, it can be difficult to decipher which part of that line of code is the problem when an access violation occurs." With Visual Studio 2015 Update 1, "we now show a message directly in the Exception Dialog that informs you which variable was the nullptr." Anderson notes that the feature is enabled only during C and C++ debugging sessions, but they're looking to extend it out to .NET.
The Visual C++ team is also introducing what they call "experimental" tools, which can be used for testing purposes. "At various times during our development cycle here in the C++ IDE, our developers start working on features that we believe can bring a lot of value to customers," writes Visual C++ Program Manager Gabriel Ha, in a blog post. "Sometimes we just don't have enough data on our own to figure out whether or not what we came up with works for our users on a broader scale."
Ha said that the experimental tools to VS 2015 Update 1can be toggled off or on, which means not having to go through the process of loading extensions and restarting VS in order to use them. Tools include Enable New Database Engine, Enable Extract Function, Enable Expand Scopes, and a hyperlink that, when clicked, goes to the VS Gallery as well as this page for other tools.
You Tell 'Em, Readers: If you've read this far, know that Michael Domingo, Visual Studio Magazine Editor in Chief, is here to serve you, dear readers, and wants to get you the information you so richly deserve. What news, content, topics, issues do you want to see covered in Visual Studio Magazine? He's listening at firstname.lastname@example.org.