【问题标题】:How do I automatically sort methods by header?如何按标题自动对方法进行排序?
【发布时间】:2010-10-11 13:48:37
【问题描述】:

按照与 .cpp 文件中相同的顺序对头文件中的方法进行排序是一种很好的风格,但这种顺序在开发过程中通常会变得粗糙。

如何将 cpp 文件中的方法重新排序为头文件中给出的顺序?

【问题讨论】:

  • 听起来像是代码美化师的工作。你在哪个平台上,Windows 还是 unix?
  • 我觉得你在真的小事上大汗淋漓。
  • 在大多数情况下,它不会提高可读性,比如可以为您搜索方法的 IDE……甚至是在文件中进行简单搜索。这是非常非常非常小的东西。
  • 我一直发现在支持头文件概念的语言中存在缺陷的一件事是,没有标准的方法可以将所有内容放在一个源文件中并从中生成头文件。你真的不应该保留两份声明的副本。为了回答你的问题,我用来做这件事的工具叫做“实习生”。 :-)
  • 声明并不是真正的两份——一份肯定是声明,另一份是定义

标签: c++ header code-structure


【解决方案1】:

我发现使用图形差异工具并排显示头文件和源文件以保持文档同步并确保所有内容的顺序相同是有效的。 (我的雇主给我买了 Araxis Merge,所以我就用它,但是有各种免费和商业工具可以在各种平台上完成同样的事情。)

使用过程式 C 或 C++ 文件可能会更容易,这与面向对象的 C++ 文件相反,其中类成员函数在标头中的缩进级别与在源文件中的缩进级别不同。

【讨论】:

    【解决方案2】:

    您可以使用建模器(例如 Umbrello)为您的类建模并生成适当的代码。

    【讨论】:

      【解决方案3】:
      The headline says: sort methods in cpp file by header
      The body says:  sort methods in header files in the same order as in the cpp file
      

      这不矛盾吗? :-)

      虽然可以通过某些工具或手动编辑头文件或源文件,但在现实生活中,很难强制/维护该顺序

      我的方法是按字母顺序“查看”方法名称。这可以通过在文件上运行doxygen 来实现。在 doxygen 配置文件中,以下两个选项可能有用

      SORT_MEMBER_DOCS = YES
      SORT_BRIEF_DOCS = YES
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-10-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多