Adakah yang tahu alat refactoring berfitur lengkap untuk C ++ yang dapat diandalkan dengan basis kode besar (sekitar 100.000 baris)?
Saya mencoba apa pun yang dapat saya temukan berulang kali selama beberapa tahun terakhir: SlickEdit, Eclipse CDT. Mereka semua sama sekali tidak dapat digunakan.
RINGKASAN : Saya mengambil waktu dan mengevaluasi "Visual Assist X" serta "Refactor for C ++". Keduanya memiliki beberapa fitur yang mengesankan, tetapi keduanya juga jauh dari sempurna. Mengekstraksi sejumlah besar kode biasanya tidak memuaskan tanpa modifikasi manual - dan karena itu tidak membuahkan hasil.
"Visual Assist X" memiliki fitur-fitur yang bagus seperti pelengkapan otomatis yang jauh lebih lengkap, dll. Tetapi itu menyebabkan banyak kedipan dan melambat pada titik-titik tertentu.
Oleh karena itu menurut saya jawabannya adalah: "Tidak, tidak ada alat refactoring siap produksi untuk C ++"
UPDATE Maret 2015 Adapun balasan hdoghmens hari ini saya mencoba Resharper untuk C ++. Tautannya https://www.jetbrains.com/resharper/ tidak mengatakan apa-apa tentang C ++. Tetapi saya menemukan Resharper C ++ yang diumumkan lebih dari setahun yang lalu di sini:
https://www.jetbrains.com/resharper/features/cpp.html
Saya mencobanya dengan VC2010 menggunakan basis kode 20MB.
Tes 1: Ekstrak Metode: menghasilkan pengecualian Pengambilan Ulang. Tidak ada kode sumber yang diubah.
Tes 2: Ekstrak Metode dengan sumber berbeda: Berfungsi baik
Tes 3: Ubah tanda tangan dari fungsi yang diekstraksi: Menghasilkan kode C ++ yang rusak:
bool myclass::do_work123(<unknown long Color>int& Filled*&, long, int&)
Mungkin itu sebabnya C ++ tidak terdaftar di halaman utama.
Menurut pendapat saya jawaban untuk pertanyaan ini masih "TIDAK" .