如何定义 namespace
1. 创建一个 Package ,,命名为 Namespaces 。
2. 在刚才建立的 Package 下建立一个 GClass 类,定义一个 int i 和 getvalue 成员函数。如图:
3. 双击 Namespaces package ,并在“ ANSI C++ ”标签里将 IsNamspace 属性置为 true ,如图:
4. 生成代码
Ø 正向工程与逆向工程
正向工程:
1). 检查并创建模型中的类,比如创建类名为 GClass 的一个类;
2). 在 Component View 里创建构件 (component) ; 如:创建名字为 NewPackageBody 的 component 名称
3). 双击刚才建立的构件( NewPackageBody ),在弹出的 Component Sepcification 窗口中的 Realizes 标签页里右击你要分配的类,选择 ”assign” 将类映射到构件,同时你需要在 General 标签页里将 language 选项设置成 ANSI C++ ,如下图:
4). 可以在 Tools->ANSI C++->Open ANSI C++ Specification 设置代码生成属性 ,如图:
5). 选择类图和(或 ) 构件图中要进行代码生成的类和构件;
6). 选择 Tools> ANSI C++>Code Generation 或者右单击类和构件图标,选择 A NSI C++>G enerate Code… 。
逆向工程:
1 )在构件视图( Component View )中创建并命名新的构件 (Component) ,如: NewPackageBody ;
2). 双击新的构件( NewPackageBody )打开 Component Specification 窗口,将构件的实现语言改为 ANSI C++ ,如图:
3). 右单击新构件( NewPackageBody ),选择快捷菜单中的 ANSI ; C++>Open ANSI C++ Specification… ,打开构件 ANSI C++ Specification 窗口,如图:
4). 在构件规范窗口的 Files 标签中添加源文件;
5). 单击构件 NewPackageBody ,选择 Tools>A NSI C++>Reverse engineer… ,打开 “ 选择要添加到模型中的类 ” 的窗口;
6). 选择要添加到模型中的类,单击 Ok 按钮,开始逆向工程。
Ø 定义模板类
1 )检查并 在 模型中创建一个类,比如创建 TAllocator ;
2 )双击在第一步中创建的类( TAllocator ),出现 Class Specification 窗口,在 General 标签页中将 Type 设置为: ParameterizedClass ,如图;
3 )同时在 Class Specification 窗口的 Detail 标签页中的 Formal Arguments 中增加一个类型名 T ,类型为 class ,如图:
定义组合
1 )检查并建立模型中的两个类,比如建立类 A 和类 B ;
2 )使用聚合关系连接 A 和 B ;
3 )双击那根聚合的连接线,在窗口 Aggregation Specification 中的 Role B Detail 中,将 Containment of B 设置成 By Value 的方式,如图:
发表于 @ 2009年07月09日 23:29:00 | 评论( 0 ) | 举报 | 收藏