用于 C++ 的 UML 免费逆向工程工具(.h/.cpp ==> 类图)

发布于 2024-12-13 18:47:47 字数 1539 浏览 3 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

吃不饱 2024-12-20 18:47:47

Dia是一个非常好的开源绘图工具,并且cpp2dia 从 .h/.cpp 文件创建 UML 图。

我在Linux下使用,不知道其他平台是否可以运行。

cpp2dia 没有 GUI,但它的命令行使用非常简单。

Dia is a very good open source drawing tool, and cpp2dia creates UML diagrams from .h/.cpp files.

I use it under Linux, I don't know if it runs in other platforms.

There is no GUI for cpp2dia, but its command line usage is very simple.

怪我鬧 2024-12-20 18:47:47

关于布姆尔

它声称在我的代码中发现了错误

相反只接受“真正的”C++,没有预处理器步骤,因此在类定义或操作定义中使用宏会产生错误。

它不会直接将自定义数据类型的数据成员显示为属性

相反,当类型不是已知类或不是类(例如“int”)时,越可能产生关系,则使用属性。

不要进行多次单独的反向操作,而是进行一次反向操作,指定要保留的几个顶级目录(递归遍历每个指定的目录)

Bruno Pagès(Bouml 的作者)

About Bouml

it claims to have found errors in my code

the reverse only accept 'true' C++, there is no preprocessor step, so any use of a macro in a class definition or an operation definition produces an error.

it doesn't display data members that are of custom data types directly as attributes

the reverse produces relations the more it is possible, an attribute is used when the type is not a known class or not a class (eg 'int').

don't do several separated reverses, do one reverse specifying several top directories to reserve (each specified directory is traversed recursively)

Bruno Pagès (author of Bouml)

天生の放荡 2024-12-20 18:47:47

我还没有尝试过,但 Umbrello 似乎是一个可行的候选者:http://uml.sourceforge.net/它构建在 KDE 库之上,因此应该在 Linux/Windows/Mac 上运行。

I haven't tried this but Umbrello seems like a viable candidate: http://uml.sourceforge.net/ It is built on top of KDE libraries so it should run on Linux/Windows/Mac.

以往的大感动 2024-12-20 18:47:47

我开发了一个名为 Doxygraph 的工具,它可以解析 Doxygen 生成的 XML 并将其转换为交互式 UML 类图,您可以在 Web 浏览器中查看该图,也可以将其导入到任何可以读取 Graphviz“点”文件的软件中。

I've developed a tool called Doxygraph which can parse the XML generated by Doxygen and turn it into an interactive UML class diagram which you can view in a web browser or import into any software that can read Graphviz "dot" files.

眉黛浅 2024-12-20 18:47:47

您可以尝试 ArgoUML,它是免费的,有一个漂亮的 GUI,并且是用 Java 编写的,因此可以在任何平台上轻松运行系统。

它能够从 UML 图生成 C++;然而,C++源代码的逆向工程目前由子项目处理。该工具的最新快照可以从源存储库下载。然而,该工具仍在开发中,因此它可能无法按您的预期工作。

You can try ArgoUML which is free, has a nice GUI and is written in Java so can be run painless on any system.

It is able to generate C++ from UML diagrams; however, reverse engineering of C++ source code is handled by a sub-project for the moment. The latest snapshot of this tool can be downloaded from the source repository. Yet, this tool is still in development, so it might not work as you would expect.

笑着哭最痛 2024-12-20 18:47:47

我已经为 StarUML 实现了一个模块,它提供了 C++ 的增量逆向工程。它还提供对 std 容器的支持。它仍在开发中,但您可能想尝试一下。
http://starumlcmodule.sourceforge.net

I have implemented a module for StarUML that provides incremental reverse engineering of C++. It provides support for std containers also. It still under development but you may want give it a try.
http://starumlcmodule.sourceforge.net.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文