Also in this section:
The ANSI C++ profile is the base for all other C++ profiles. Other specialized C++ profiles must inherit from this profile by creating a generalization in modeling tool.
Fundamental types defined by ANSI are mapped to a UML data type. You can state each fundamental type with a modifier (signed, unsigned, short, long) in a different order, but it is the same type. For example, you can use either short int or int short. Only versions defined as type by ANSI simple-type-specifiers are created as datatypes in the profile. If an UML synonym dataType is found during the reverse process, a class is created with this name.
Each fundamental type has 3 corresponding cv-qualified versions: const, volatile, and Const Volatile qualified type.
UML data types defined in the UML profile contain char, int, double, float, or void. We use these datatypes for mapping C++ type.
These datatypes are specific. In UML 2, only Integer, Boolean, String, and UnlimitedNatural are defined; they are not defined as datatypes, but as primitives. Our modeling tool does not define UnlimitedNatural in any profile and Integer and boolean (b is lowercase) are datatypes.
|PROFILE: UML Standard Profile. MagicDraw Profile.datatypes|
|Char does not have a synonym||Char types are represented as signed char and unsigned char according to the compiler implementation.|
Signed, signed int, int signed
|Double does not have a synonym|
|Float does not have a synonym|
|Void does not have a synonym|
|PROFILE: C++ ANSI Profile.datatypes|
|Signed char does not have a synonym||Char types are represented as signed char and unsigned char according to the compiler implementation.|
|Unsigned char does not have a synonym|
unsigned, int unsigned
unsigned short int
unsigned short, short unsigned, unsigned int short, short unsigned int, short int unsigned, int short unsigned, int unsigned short
unsigned long int
unsigned long, long unsigned, unsigned int long, long unsigned int, long int unsigned, int long unsigned, int unsigned long
long, int long, signed lon, long signed, signed long int, signed int long, long signed int, long int signed, int signed long,int long signed
short, int short, signed short, short signed, signed short int, signed int short, short signed int, short int signed, int signed short, int short signed
|Long double does not have a synonym|
|Bool does not have a synonym|
|wchar_t does not have a synonym|