Enterprise Architect supports round trip engineering of C++, including the Managed C++ and C++/CLI extensions, where the following conventions are used.
Stereotypes
Stereotype |
Applies to |
Corresponds To |
enumeration |
Class |
An enum type. |
struct |
Class |
A struct type. |
property get |
Operation |
A read property. |
property set |
Operation |
A write property. |
union |
Class |
A union type. |
typedef |
Class |
A typedef statement, where the parent is the original type name. |
friend |
Operation |
The friend keyword. |
Tagged Values
Tag |
Applies to |
Corresponds To |
typedef |
Class with stereotype other than typedef |
This class being defined in a typedef statement. |
anonymous |
Class also containing the Tagged Value typedef |
The name of this class being only defined by the typedef statement |
attribute_name |
Operation with stereotype property get or property set |
The name of the variable behind this property. |
mutable |
Attribute |
The mutable keyword. |
inline |
Operation |
The inline keyword and inline generation of the method body. |
explicit |
Operation |
The explicit keyword. |
callback |
Operation |
A reference to the CALLBACK macro. |
initializer |
Operation |
A constructor initialization list. |
bodyLocation |
Operation |
The location the method body is generated to. Expected values are header, classDec or classBody. |
typeSynonyms |
Class |
The typedef name and/or fields of this type. |
throws |
Operation |
The exceptions that are thrown by this method. |
afx_msg |
Operation |
The afx_msg keyword. |
volatile |
Operation |
The volatile keyword. |
Other conventions
· | Namespaces are generated for each package below a namespace root |
· | By Reference attributes correspond to a pointer to the type specified |
· | The Transient property of an attribute corresponds to the volatile keyword |
· | The Abstract property of an attribute corresponds to the virtual keyword |
· | The Const property of an operation corresponds to the const keyword, specifying a constant return type |
· | The Is Query property of an operation corresponds to the const keyword, specifying the method doesn't modify any fields |
· | The Pure property of an operation corresponds to a pure virtual method using the "= 0" syntax |
· | The Fixed property of a parameter corresponds to the const keyword. |
See Also