c++ - 是否有任何 FOSS 工具可以从现有的 C++ 代码可靠地创建 UML 模型?

标签 c++ uml

<分区>

我已经尝试过 Umbrello 和 ArgoUML;并且两者都无法从现有的 C++ 代码库生成代码。尽管他们在这些领域的能力有限,但他们都无法成功导入带有 std、boost、SDL 和本地包含的文件。 FOSS 世界中是否有任何东西可以模拟相当复杂的 C++ 代码。 UML 部分是可选的,重要的是生成一致且准确的代码可视化。

注意:gprof2dot 和 doxygen 等工具可以处理源代码,但它们的输出非常复杂,与原始代码一样难以掌握。

注意 2:既然不能再问关于 SO 的工具,让我改写一下这个问题:

在给定一个庞大、陈旧、复杂且笨拙的 C++ 代码库的情况下,如何快速有效地执行主要重构。我所说的专业是指:

  • 从现有的源/ header 对中提取整个结构/枚举/类到它们自己的文件中
  • 添加/删除命名空间
  • 改变函数签名
  • 等等

有些事情可以用 grep 和 sed 来解决;但是,发现和管理包含依赖项可能会让人不知所措。我目前坚持使用“更改并修复”方法——尝试重构某些内容并迭代构建并修复编译器指出的错误。对于广泛使用的对象,这是。什么是正确的方法?

最佳答案

我在几个项目中为此使用了 Doxygen。

这不是很好,但比从头开始要好。

关于c++ - 是否有任何 FOSS 工具可以从现有的 C++ 代码可靠地创建 UML 模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19144346/

相关文章:

c++ - 防止 QObject* 隐式转换为 bool : prevent 'Multiple constructor' warning

c++:从一个 vector 中删除另一个 vector 中的元素

c++ - 仅 WPF 应用程序托管代码吗?

uml - 单向关系箭头是什么意思

c - 嵌套函数视觉表示 ("flowcharts")

interface - 接口(interface)如何用于组件图模块之间的通信?

c++ - 类和结构,没有默认构造函数

C++ MIDL2025 : Expecting a type specification near ""

uml - 如何使用 PlantUML 新事件图语法生成向右箭头?

uml - 您是否先设计/草图/绘制开发解决方案,然后再进行开发?如果有怎么办?