C++ Conventions

Return to Introduction  Previous page  Next page

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