Est-ce que quelqu'un connaît un outil de refactoring complet pour C ++ qui fonctionne de manière fiable avec de grandes bases de code (environ 100 000 lignes)?
J'ai essayé tout ce que je pouvais trouver encore et encore au cours des dernières années: SlickEdit, Eclipse CDT. Ils n'étaient pas du tout utilisables.
Résumé : j'ai pris le temps et évalué «Visual Assist X» ainsi que «Refactor for C ++». Les deux ont des caractéristiques impressionnantes, mais les deux sont également loin d'être parfaits. Extraire un gros bloc de code n'est généralement pas satisfaisant sans modifications manuelles - et ne paie donc pas.
"Visual Assist X" a des fonctionnalités intéressantes telles qu'une autocomplétition beaucoup plus complète, etc. Mais cela entraîne tellement de scintillement et ralentit beaucoup à certains moments.
À mon avis, la réponse est donc: "Non, il n'y a pas d'outil de refactoring prêt pour la production pour C ++"
MISE À JOUR Mars 2015 En ce qui concerne la réponse hdoghmens aujourd'hui, j'ai essayé Resharper pour C ++. Son lien https://www.jetbrains.com/resharper/ ne dit rien sur C ++. Mais j'ai trouvé Resharper C ++ qui a été annoncé il y a plus d'un an ici:
https://www.jetbrains.com/resharper/features/cpp.html
Je l'ai essayé avec VC2010 en utilisant une base de code de 20 Mo.
Test 1: Méthode d'extraction: entraîne une exception Resharper. Aucun code source modifié.
Test 2: méthode d'extraction avec une source différente: fonctionne bien
Test 3: Modifier la signature de la fonction extraite: entraîne un code C ++ cassé:
bool myclass::do_work123(<unknown long Color>int& Filled*&, long, int&)
C'est peut-être pourquoi C ++ n'est pas répertorié sur la page principale.
A mon avis, la réponse à cette question est toujours "NON" .