【问题标题】:How to draw class diagrams from C++ code [closed]如何从 C++ 代码中绘制类图 [关闭]
【发布时间】:2013-04-21 17:51:34
【问题描述】:

我有一些无法编译的 C++ 代码,我想从中绘制类图。我可以使用一些非常基本的东西(没有什么花哨的只是简单的骨头)吗?我在linux上

【问题讨论】:

  • 有点重。也生成文档。 stack.nl/~dimitri/doxygen
  • 我认为 Visual Studio 有一个内置工具可以做到这一点
  • "我有一些无法编译的 C++ 代码,我想从中绘制类图。" - 如果它没有编译,那么语法就搞砸了 -> 没有 AST -> 没有类图。感觉到矛盾了吗?
  • @H2CO3 这有很多道理但是我想图表生成器不会有任何接近完整的类型和范围检查的东西-吹的编译器,所以它可能不会关心整个类的语义错误。
  • @Elliott 你没明白我的意思。如果源代码不能编译,很可能有语法错误。

标签: c++ uml class-diagram


【解决方案1】:

根据代码的损坏程度,您可能需要查看Umbrello UML Modeler。它处理将 C++ 转换为 UML 图以及代码生成和更新。处理不完全使用普通编译器构建的源代码也是众所周知的。

【讨论】:

  • 赞成。我建议检查一下,statquant。
  • 我会看看谢谢
【解决方案2】:

ArgoUML (http://argouml.tigris.org/) 是一个不错的多平台UML图表工具。

或者,如果您不关心实际上是否遵循严格的 UML 约定,有几个通用的在线图表服务,如 LucidChart (https://www.lucidchart.com/),可以让您创建与 UML 兼容但不是真正兼容的类图(并且赢得了也不要强迫你尝试保持兼容)。

编辑:我刚刚意识到您的意思是使用 代码实际创建图表的工具,在这种情况下,我只能真正想到 Doxygen,它将生成图表作为生成文档的副作用为您的代码。除了以下内容之外,谷歌搜索并没有给我太多其他信息:http://www.codedrawer.com/ 但我还没有亲自检查过。

您还可以在这里找到一些额外的东西(感谢上校恐慌的链接):Generating UML from C++ code?

【讨论】:

  • 其实,等等,我才意识到你的意思是来自代码。
  • 代码无法编译,是不是有问题?
  • H2CO3 说的是对的,适用于任何自动工具。如果您的代码由于语法错误而无法编译,那么这些自动工具(也以与编译器相同的方式依赖语法分析)中的任何一个都不太可能工作。
  • 这些工具可能在语义错误方面比编译器更宽松——例如,您的 UML 图生成器可能不关心您尝试添加200 到蓝色,因为它没有任何理由。
【解决方案3】:

BOUML 不是目前最漂亮的 UML 建模程序,但它非常强大,可以从源代码绘制图表,并从图表生成代码。

编辑:哦,看来你现在需要付费了,以前它是免费的……你可能仍然可以在 Internet 上的某个地方找到旧的免费版本。

【讨论】:

  • sourceforge.net/projects/douml 你不需要为“Bouml”付费 :) 我的 fork 是开源的并且在接口方面领先
猜你喜欢
  • 1970-01-01
  • 2015-06-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多