The C++ language is large and complex with context-sensitive syntax subtleties that make it difficult to create a reliable and fast rename refactoring tool. For years we wanted to include rename refactoring in Visual C++ but it never quite made it. We were concerned about scalability, performance and accuracy for different user scenarios. Rename refactoring might take longer on more complex or larger projects.
Recently, we decided to give it a try. The result is the Rename Refactor Helper for Visual Studio 2013 (see the announcement on Channel 9 / Going Native). Once installed, you can easily right click on a symbol >refactor>rename in your C++ project. You might still need to manually go through unknown/unconfirmed results proportional to the scope of the refactoring for complex refactors, but for many common scenarios little intervention is required. Make sure you have Tools->Options->Text Editor->C/C++-> Advanced->Disable Resolving set to False. This will allow us to validate the candidate references for the selected symbol.
Our goal with this release is to understand how useful this functionality is for Visual C++ developers. We hope it replaces find/replace in files or copy/paste (ugh!) – and with your feedback, we will continue trying to make it better.
Please try the Rename Refactor Helper for Visual Studio 2013 extension for yourself, and if it works well enough for you, let us know and we’ll try to add other refactoring types to the tool as well! And if it does not quite meet your needs, tell us how we should improve it! And be sure to watch the video on Channel 9.
Bogdan Mihalcea (firstname.lastname@example.org)
VC++ IDE Team