StarUML 代码生成(C++)
本文将以类CTest为例说明如何使用StarUML生成C++代码
图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
图2 帮助文档
这里只描述安装StarUML后,为了生成代码需要设置的步骤。
选择菜单项 Tools/Options,弹出如下图所示的对话框
图3 Options对话框
窗口左侧选择 C++/Code Generation(红色圈起部分),然后在窗口右侧勾选Generate codes even when there is no profile,否则,在类图(不是上图的Options对话框 )中右键菜单中选择菜单项 C++/Generate code...后会弹出下图所示对话框
图4 错误对话框
如果使用VC++6.0,则需要勾选Options对话框中蓝色圈起部分(Use Microsoft visual C++ grammar)。还可以根据需要勾选Generate namespace as subdirectory等选项。
生成C++代码
设置好Profile并设计好类图后,在类图的空白处右键单击并选择C++/Generate code...
图5 生成C++代码
在弹出的对话框中选择类图所属的Model,本例中CTest类在Design Model中
图6 生成代码2
选择Model后操作由于篇幅原因,在此不再赘述。
设置成员类型
到目前为止,在生成代码时,所有的成员(变量和方法)均按照默认的类型生成(成员变量类型为int,成员方法返回类型为void)。
要设置成员的类型,可以在成员后面加上:成员类型(如:int),返回类型为void的方法无需处理。
还可以通过选中类CTest,在右侧的属性对话框中设置成员的类型
在Attributes或者Operations后单击单元格,会出现“...”按钮,单击“...”按钮,会弹出
选中其中一个成员,此时主窗口右侧的属性对话框已更改,在属性对话框中设置变量类型即可。
构造函数与析构函数
到目前为止,生成的代码中不会出现构造函数和析构函数,因为构造函数和析构函数需要自己添加,并且在构造函数之前要加上<<create>>,在析构函数之前要加上<<destory>>,或者使用上图属性对话框中的Steorotype添加<<create>>和<<destroy>>
StarUML 代码生成(C++)相关推荐
- 使用StarUML创建类图
1.综述(What) StarUML是一种生成类图和其他类型的UML图表的工具.本文是一个使用StarUML创建类图(Java语言描述)的简明手册. StarUML(简称SU),是一种创建UML类图, ...
- UML学习总结(3)——StarUML指导手册
StarUML使用说明-指导手册 原著:Stephen Wong 翻译:火猴 StarUML是一种生成类图和其他类型的统一建模语言(UML)图表的工具.这是一个用Java语言描述 ...
- StarUML使用说明-指导手册
StarUML使用说明-指导手册 原著:Stephen Wong 翻译:火猴 1.综述 StarUML是一种生成类图和其他类型的统一建模语言(UML)图表的工具.这是一个用Jav ...
- StarUML for Mac(UML软件建模器)
StarUML是一款Mac平台上的UML建模工具,该软件主要用于各种图纸的绘制操作,并且可以将制作好的图纸文件导出为JPG.JPEG.BMP.EMF等图片格式,同时还拥有读取c++.c#代码生成类图的 ...
- StarUML使用说明
综述 StarUML是一种生成类图和其他类型的统一建模语言(UML)图表的工具.这是一个用Java语言描述的创建类图的简明手册. StarUML(简称SU),是一种创建UML类图,并能够自动生成Jav ...
- 使用StarUML画类图
原文链接:http://www.flyne.org/article/379 staruml比rational rose小多了,觉得也很实用,似乎免费 1.综述(What) StarUML是一种生成类图 ...
- StarUML用户手册
StarUML用户手册 第一章 StarUML概述... 3 StarUML是什么... 3 适合用户的UML工具... 3 真正的UMD支持... 3 高可扩充及适应性... 3 ...
- StarUML使用指南
拷贝地址:http://wenku.baidu.com/view/79ead68483d049649b6658f9.html 第一章 StarUML概述 本章包含StarUML™概述,StarUML™ ...
- 邱郁惠-StarUML建模-UMLChina讲座-音频和幻灯
时间 2008年5月28日(周三)晚上19:00-21:00 演讲人 邱郁惠,台湾UML/MDA专家.多年来一直研究OOAD.UML.MDA,为多家大型机构提供相关的咨询服务. 声音记录 网盘下载(7 ...
最新文章
- LINUX DNS服务的配置(一)
- c代码中 执行sh文件 带参数_创建含有$1参数的Bash脚本以及运行脚本的三种方法...
- 倒计时 2 天 | 解锁生鲜电商的战“疫”秘密
- Win32 串口编程(一)
- php _set魔术方法的用法,PHP魔术方法__GET、__SET使用实例
- SpringBoot启动流程是怎样的
- rest服务器性能,使用多线程提高REST服务性能
- 最小安装下如何打开网络连接
- ROS入门笔记(十):编写与测试简单的消息发布器和订阅器(C++)
- html二叉树遍历,二叉树的遍历(前序、中序、后序、层次)
- 23.vs2015创建Qt界面动态库
- ROS 控制台:rqt_console 因为比较简单。。。
- php中sql语句有啥用,php中sql语句
- html 卫星地图显示地名,卫星图看:河南10个名字非常好听的县(区),你认识几个?...
- 计算机固态加机械硬盘,固态硬盘和机械硬盘怎么混合使用
- 定位首款弹幕K歌软件 阿里鲸鸣未来究竟能够走多远?
- Android神笔之Paint
- 噪声和信噪比的转换(如何在数据集中添加噪声)
- 数据库oracle11g的存储结构
- 使用计算机语言编程是用几进制,使用计算机高级语言编程,将下列变量值的二进制编码打印输出。请给出程序源代码和输出结果(可截屏):...
热门文章
- Zabbix监控平台部署+监控客户端
- autocad2014 第二次打开闪退_cad2014闪退怎么解决win10_win10系统打开cad2014闪退的解决步骤...
- DB9针型:RS485输出信号及接线端子引脚分配
- 2021外卖cps小程序项目|外卖红包cps带好友返利佣金分销系统程序|饿了么美团联盟源码
- 【echarts地图制作】下钻到乡镇/街道级别的
- Introduction to Graph Neural Network(图神经网络概论)翻译:Chapter2:Basic of Math and Graph
- 双足竞走机器人的意义_双足步行机器人
- 计算机网络icmp实验,北航研究生计算机网络实验_实验三 网络层实验
- emWin 2天速成实例教程012_基于STM32单片机的全键盘中文汉字拼音输入法
- 深谈SCI论文写作技巧