代码之家  ›  专栏  ›  技术社区  ›  Carl

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

  •  20
  • Carl  · 技术社区  · 17 年前

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

    5 回复  |  直到 15 年前
        1
  •  22
  •   Benoit    17 年前

    CDT(C/C++开发工具Eclipse Project)5有一堆新的重构

    * 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

        2
  •  2
  •   none    17 年前

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

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

    要进行更深入的讨论,您可能需要签出 this .

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

        3
  •  1
  •   none    15 年前

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

        4
  •  0
  •   nikolavp    17 年前

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

        5
  •  0
  •   Mike Kucera    17 年前

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

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