La transformation transforme des attributs UML en attributs C++, et utilise les propriétés UML suivantes :
Propriété |
C++ |
Nom |
Crée une nouvelle variable de membre avec le nom défini (enlève les caractères non conformes) |
Visibilité |
Détermine la visibilité de l'attribut généré |
Type |
Génère le membre avec le type indiqué |
Est statique |
Génère l'attribut avec la classe au lieu de la portée de l'instance |
valeur par défaut |
Devient la valeur initiale de l'attribut. La transformation utilise la valeur par défaut que vous avez indiquée sans modification. Si la valeur par défaut était entre guillemets dans le code C++, vérifiez de bien inclure les guillemets dans la valeur par défaut UML. |
Eventuellement, vous pouvez appliquer le stéréotype cpp_type à un attribut UML. La transformation traite la propriété de "qualifiant" du stéréotype de la même façon que la propriété UML.
Si vous définissez l'attribut InitializerKind de cpp_type en "affectation", ou si vous ne l'indiquez pas, l'attribut utilise un opérateur d'affectation (par exemple, "MyAttribute = 3") dans les définitions statiques. Si vous définissez l'attribut en "constructeur", la transformation appelle le constructeur d'attribut pour créer la valeur d'attribut (par exemple, "MyAttribute(3)") dans les définitions statiques.
La transformation ajoute les types de données qui sont utilisés par les attributs classes à la liste d'inclusion de classe.