staruml生成C++代码

 

本文将以类CTest为例说明如何使用StarUML生成C++代码

staruml生成C++代码_第1张图片

图1 类图

CTest类包含3个成员变量iAttr、bAttr、strAttr,其类型分别是int、BOOL、CString

CTest类包含4个成员方法iFunc、bFunc、strFunc和voidFunc,其返回值类型依次是int、BOOL、CString和void

配置Profile

更详细的配置见帮助文档:菜单项 Help --> C++ Add-in Help

staruml生成C++代码_第2张图片

图2 帮助文档

这里只描述安装StarUML后,为了生成代码需要设置的步骤。

选择菜单项 Tools/Options,弹出如下图所示的对话框

staruml生成C++代码_第3张图片

图3 Options对话框

窗口左侧选择 C++/Code Generation(红色圈起部分),然后在窗口右侧勾选Generate codes even when there is no profile,否则,在类图(不是上图的Options对话框 )中右键菜单中选择菜单项 C++/Generate code...后会弹出下图所示对话框

staruml生成C++代码_第4张图片

图4 错误对话框

如果使用VC++6.0,则需要勾选Options对话框中蓝色圈起部分(Use Microsoft visual C++ grammar)。还可以根据需要勾选Generate namespace as subdirectory等选项。

生成C++代码

设置好Profile并设计好类图后,在类图的空白处右键单击并选择C++/Generate code...

staruml生成C++代码_第5张图片

图5 生成C++代码

在弹出的对话框中选择类图所属的Model,本例中CTest类在Design Model中

 

staruml生成C++代码_第6张图片

图6 生成代码2

选择Model后操作由于篇幅原因,在此不再赘述。

设置成员类型

到目前为止,在生成代码时,所有的成员(变量和方法)均按照默认的类型生成(成员变量类型为int,成员方法返回类型为void)。

要设置成员的类型,可以在成员后面加上:成员类型(如:int),返回类型为void的方法无需处理。

staruml生成C++代码_第7张图片

还可以通过选中类CTest,在右侧的属性对话框中设置成员的类型

staruml生成C++代码_第8张图片

在Attributes或者Operations后单击单元格,会出现“...”按钮,单击“...”按钮,会弹出

staruml生成C++代码_第9张图片

选中其中一个成员,此时主窗口右侧的属性对话框已更改,在属性对话框中设置变量类型即可。

staruml生成C++代码_第10张图片

构造函数与析构函数

到目前为止,生成的代码中不会出现构造函数和析构函数,因为构造函数和析构函数需要自己添加,并且在构造函数之前要加上<<create>>,在析构函数之前要加上<<destory>>,或者使用上图属性对话框中的Steorotype添加<<create>>和<<destroy>>

staruml生成C++代码_第11张图片

你可能感兴趣的:(C++,c,Microsoft,文档,attributes,generation)