Profile Definition List

C++ Add-In

Profile Definition List

Top  Previous  Next

Stereotype

C++ profile contains definitions for the following stereotypes.

Sterotype

Target Element

Description

<<CppSourceFile>>

Component

Source file with C++ code

<<CppHeaderFile>>

Component

C++ header file

<<CppStruct>>

Class

Indicates struct, that is a compound type similar to class.

<<CppUnion>>

Class

Indicates union, that can substitute value for only one member at a time.

<<CppOperator>>

Operation

Indicates operator function that overrides operator.

<<CppMacro>>

Operation

Used for expressing a macro that defines a part of member definition such as class as a UML operation element.

<<CppUsing>>

Dependency

Used for referencing other namespace with the using syntax.

<<CppFriend>>

Dependency, Operation

Used for expressing friend of class as dependency element or expressing friend function.

<<CppTypedef>>

Class

Used for expressing typedef, which defines the type, as class element.

<<CppSynonym>>

Dependency

Indicates the dependency between the typedef class and the original type when defining a type with a typedef of a different name.

<<CppDelegate>>

Class

Indicates delegate function defined in .NET managed C++.

TagDefinition

C++ profile contains definitions for the following tag definitions.

TagDefinition

Type

Target Element

Description

CppVirtual

Boolean

Generalization, Realization, Operation

The CppVirtual tag definition in Generalization or Realization indicates that the parent class is a virtual base class. If the CppVirtual tag definition is applied to an operation, it indicates that the C++ member function is a virtual function that can be redefined by the derived class.

CppStatic

Boolean

AssociationEnd

Indicates that the C++ data member matching with AssociationEnd is a static data member that shares only one copy for all instances of the class.

CppMutable

Boolean

Attribute, AssociationEnd

Indicates that the C++ data member matching with

Attribute or AssociationEnd is a mutable data member that can be changed by the const member function.

CppVolatile

Boolean

Attribute, AssociationEnd

Indicates that the C++ data member matching with Attribute or AssociationEnd is a volatile variable.

CppCollection

String

Attribute, AssociationEnd

Defines the C++ Collection type name.

CppConst

Boolean

Operation, Parameter

The CppConst tag definition used in Operation element indicates that the C++ function is a read-only function. If the CppConst tag definition is used in Parameter element, it indicates that the parameter cannot be changed within the function.

CppInline

Boolean

Operation

Indicates that the operation element is an inline function that compiles the function body by inserting it in the place where the function is called.

CppDimension

Integer

Attribute, AssociationEnd, Operation, Parameter

Indicates the array dimension of the declared object.

CppBitField

Integer

Attribute

Indicates the bit field of the data member.

CppEnumLiteralValue

String

EnumerationLiteral

Records the value of each item for C++ enumeration (enum) objects.

CppPointer

String

Attribute, Parameter

Indicates the pointer symbols (*, &, etc.) for Attributes and Parameters.

CppFunctionTemplate

String

Operation

Records the template declaration for template function.

CppThrow

String

Operation

Records the expression in the throw clause for function.

CppTypedefPointer

String

Class

Indicates the pointer symbols (*, &, etc.) for typedef declaration.

CppTypedefDefinition

String

Class

Records the type declaration for typedef declaration.

Cpp__Declspec

String

Class, Interface, Attribute, AssociationEnd, Operation

Records the modifier list of __declspec keyword for the tag definition grammar used in Microsoft Visual C++.

Cpp__Gc

Boolean

Class, Interface, Attribute, AssociationEnd

Indicates the __gc keyword defined in Microsoft's Managed Extension for C++.

Cpp__Nogc

Boolean

Class, Interface, Attribute, AssociationEnd

Indicates the __nogc keyword defined in Microsoft's Managed Extension for C++.

Cpp__Value

Boolean

Class

Indicates the __value keyword defined in Microsoft's Managed Extension for C++.

Cpp__Event

Boolean

Interface, Attribute, Operation

Indicates the __event keyword that is used to signify events in C++, COM, and Managed Extension for C++.

Cpp__W64

Boolean

Attribute

Indicates that the __w64 keyword is being used for Microsoft Visual C++.

Cpp__Based

String

Attribute

 

Tag definition that supports Based Addressing, which is used in Microsoft Visual C++.

Cpp__Cdecl

Boolean

Operation

 

Indicates that __cdecl keyword, which is one of the function calling

methods in Microsoft Visual C++, is being used.

Cpp__Stdcall

Boolean

Operation

 

Indicates that __stdcall keyword, which is one of the function calling methods in Microsoft Visual C++, is being used.

Cpp__Fastcall

Boolean

Operation

 

Indicates that __fastcall keyword, which is one of the function calling methods in Microsoft Visual C++, is being used.

Cpp__Inline

Boolean

Operation

Indicates the inline function that uses the __inline keyword in Microsoft Visual C++.

Cpp__ForceInline

Boolean

Operation

 

Indicates the inline function that uses the __forceinline keyword in

Microsoft Visual C++.

Cpp__Property

Boolean

Operation

 

Indicates the __property defined in Microsoft's Managed Extension

for C++.

DataTypes

C++ profile contains definitions for the following basic C++ data types.

 

·int
·unsigned int
·bool
·char
·unsigned char
·short
·unsigned short
·long
·long long
·unsigned long
·void
·float
·double
·long double
·wchar_t
·__int8
·__int16
·__int32
·__int64
·__m64
·__m128
·__m128d
·__m128i