Kennt jemand ein voll ausgestattetes Refactoring-Tool für C ++, das zuverlässig mit großen Codebasen (ca. 100.000 Zeilen) funktioniert?
Ich habe in den letzten Jahren immer wieder versucht, was ich finden kann: SlickEdit, Eclipse CDT. Sie alle waren überhaupt nicht verwendbar.
ZUSAMMENFASSUNG : Ich habe mir Zeit genommen und "Visual Assist X" sowie "Refactor for C ++" evaluiert. Beide haben einige beeindruckende Eigenschaften, aber auch beide sind alles andere als perfekt. Das Extrahieren eines großen Codeblocks ist normalerweise ohne manuelle Änderungen nicht zufriedenstellend - und zahlt sich daher nicht aus.
"Visual Assist X" verfügt über nette Funktionen wie eine viel vollständigere automatische Vervollständigung usw. Aber es führt zu so viel Flackern und verlangsamt sich an bestimmten Stellen erheblich.
Meiner Meinung nach lautet die Antwort daher: "Nein, es gibt kein produktionsfertiges Refactoring-Tool für C ++."
UPDATE März 2015 Was die Antwort von hdoghmens betrifft, habe ich heute Resharper für C ++ ausprobiert. Sein Link https://www.jetbrains.com/resharper/ sagt nichts über C ++ aus. Aber ich habe Resharper C ++ gefunden, das vor mehr als einem Jahr hier angekündigt wurde:
https://www.jetbrains.com/resharper/features/cpp.html
Ich habe es mit VC2010 unter Verwendung einer Codebasis von 20 MB versucht.
Test 1: Extraktionsmethode: führt zu einer Resharper-Ausnahme. Kein Quellcode geändert.
Test 2: Extraktionsmethode mit unterschiedlicher Quelle: Funktioniert einwandfrei
Test 3: Signatur der extrahierten Funktion ändern: Führt zu fehlerhaftem C ++ - Code:
bool myclass::do_work123(<unknown long Color>int& Filled*&, long, int&)
Vielleicht ist C ++ deshalb nicht auf der Hauptseite aufgeführt.
Meiner Meinung nach lautet die Antwort auf diese Frage immer noch "NEIN" .