UML 操作

转换生成 UML 操作作为其类的方法,并使用以下 UML 属性: 

属性

C++

名称

方法名称(适用于名称验证)

可视性

确定方法的可视性

IsAbstract

生成方法作为纯粹的虚方法

IsQuery

生成方法作为 const(向操作后缀添加“const”)

IsStatic

生成具有类而不是实例范围的方法(向操作前缀添加 static 关键字)

UML 操作返回参数的类型成为生成的 C++ 方法的类型。如果不存在返回参数,则该方法的返回类型假定为 void(除了标准操作)。对无返回参数或具有多个返回参数的操作显示警告。 

可以通过将 cpp_operation 构造型应用于 UML 操作来指定几个特定于 C++ 的属性:

·         isInline:转换生成操作作为内联(向头添加操作主体)

·         isVirtual:声明操作为虚函数

·         isFriend:生成友元操作

C++ 不允许静态限定词与虚限定词或友元限定词相结合。 为了生成代码,转换倾向于使用静态限定词。

UML 参数

转换将 UML 参数转换成 C++ 操作的实参。转换不生成具有“返回”类型的参数,而是将它们用作操作返回类型的指示符。 转换将参数类型转换成实参类型。

转换将具有“出”或“进/出”方向的参数转换成引用(意思是向类型规范添加“&”限定词)。

转换使用参数的缺省值来指定 C++ 操作实参的缺省值。 

可选地,可以将 cpp_type 构造型应用于 UML 参数。 此构造型具有限定词属性,您可用此属性输入任何字符串,作为生成的类型的限定词。 

以下示例显示某些条件如何影响结果代码: 

·        如果指定了操作类型(如 Class1),并且您未指定限定词或不应用构造型,则属性的生成代码是“Class1 <ArgumentName>”。 

·         如果未指定操作类型,并且您应用 cpp_type 构造型并将限定词字符串设置为“int”,则生成的代码为“int <ArgumentName>”。 

·         如果指定了操作类型(Class1),并且您应用 cpp_type 构造型并将限定词字符串设置为“* const”,则生成的代码为“Class1 * const <ArgumentName>”。 

转换向包含列表添加参数所使用的 UML 类。

转换按“模型服务器”提供的顺序生成参数。

回到页首

使用条款 | 反馈
(C) Copyright IBM Corporation 2004. All Rights Reserved.