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.
Data Types
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
Data Type
Synonym
Notes
char
Char does not have a synonym
Char types are represented as signed char and unsigned char according to the compiler implementation.
int
Signed, signed int, int signed
double
Double does not have a synonym
float
Float does not have a synonym
void
Void does not have a synonym
PROFILE: C++ ANSI Profile.datatypes
Data Type
Synonym
Notes
signed char
Signed char does not have a synonym
Char types are represented as signed char and unsigned char according to the compiler implementation.
unsigned char
Unsigned char does not have a synonym
unsigned int
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, 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, int short, signed short, short signed, signed short int, signed int short, short signed int, short int signed, int signed short, int short signed