Eclipse中C ++重构支持的状态是什么?

时间:2008-09-25 01:08:34

标签: c++ eclipse refactoring

它是否处于实际有用的状态,并且可以做的不仅仅是重命名类?

5 个答案:

答案 0 :(得分:22)

CDT(C / C ++开发工具--eclipse项目)5.0有一堆新的重构

* Declare Method
* Extract Baseclass
* Extract Constant
* Extract Method
* Extract Subclass
* Hide Method
* Implement Method
* Move Field / Method
* Replace Number
* Separate Class
* Generate Getters and Setters

有一个CDT重构wiki

答案 1 :(得分:2)

为C ++提供重构工具已经做了很多努力,其中大多数都很早就失败了,因为创建这样的工具需要完全处理C ++源代码的能力,即你需要一个工作的完整的c ++编译器。甚至可以实现最基本形式的自动化源到源转换。

幸运的是,随着plugins into gcc的引入,最终可以预见相关的努力实际上可以为此目的利用现有的C ++编译器,而不必诉诸于他们自己的C ++编译器实现

要进行更深入的讨论,您可以查看this

目前,提供广泛自动化C ++重构支持的最有希望的候选者当然是Mozilla pork项目及其相关的配套项目Dehydra

答案 2 :(得分:1)

例如Ref ++支持的一些C ++重构不需要完全理解C ++语法。例如,上拉方法,下推方法等非常简单。出于某种原因,这种重构没有实施到CDT重构中。

答案 3 :(得分:0)

是的,如果代码太复杂,它们中的大多数实际上都不起作用。移动方法,重命名等事情有时会出现问题。

答案 4 :(得分:0)

C ++是一种非常难以提供重构支持的语言。这是因为语言非常复杂且难以解析,但主要是因为预处理器。

预处理器是C / C ++ IDE落后于其他语言的主要原因。