在 Visual Studio .NET 项目中,您可以将“类图”添加到项目中,以呈现所有命名空间、类、方法和属性的可视化表示。有没有办法为 Win32(不是 .NET)C++ 项目做到这一点?通过 Visual Studio 本身还是使用第 3 方工具?
7 回答
大多数 UML 工具应该能够做到这一点。我知道 Sparx Systems Enterprise Architect确实如此。
如果您有一个由多个 C++ 项目组成的 Visual Studio 2008 解决方案,则每个项目只能生成一个类图。
例如,如果您有一个应用程序项目链接到 10 个库项目,则必须生成 11 个单独的类图。
有两种方法可以解决这个问题,但都不是令人愉快的:
- 将所有源代码塞进一个项目中。
- 为一个项目(可能是应用程序)创建一个类图,然后将所有其他项目的文件拖到类图中。
Visual C++ 类设计器中对 Visual Studio 类设计器的功能进行了更彻底的探索。
鉴于 Visual Studio 中对 C++ 类图的支持不佳,如果您想要的不仅仅是您拥有的类的简单列表,您最好使用商业工具。 Excel Software 的WinTranslator可能值得一看,我的同事使用Source Insight。
我有 VS2008 SP1 Professional 和类图在 C++ WIN32 和 Makefile 项目中运行良好。
如果您使用的是 Visual Studio,则 C++ 的类图直到 Visual Studio 2008 才正确实现。
类设计器不适用于 C++,即使在 VS 2008 中也是如此。使用一些更专业的工具会更好。它适用于不大量使用模板的简单项目。另外,从 codeplex 获得建模电动玩具。
尝试做部分专业化,看看它是如何把所有东西都塞进一个单一的形状中的。
一种便宜的方法是使用Doxygen记录您的源代码,并让这个工具为您创建类图。
如果您的项目是基于 c++ 的项目,那么您必须先绘制 c++ 的类图,如果您的项目包含“n”个子项目,那么您必须绘制“n+1”个类图。
基本上一个类图包含
- 类变量。
- 类函数。
- 类之间的关系。
您应该将类所需的所有属性放在类图中。它看起来像一个具有 3 行类型框的表格(图形结构)。
第 1 行. 类名(如果它是对象图,它应该而且必须下划线)。
第 2 行。变量列表(一行中的一个变量)。
第 3 行. 函数列表(一行一个函数)
您必须在一个班级与另一个班级之间建立关系。