Este conteúdo aplica-se à versão 7.5.4 ou posterior. A tabela a seguir lista os estereótipos do perfil e suas propriedades e tipos relacionados.
| Estereótipo | Aplica-se a | Propriedades | Tipo |
|---|---|---|---|
| «cpp_assignment» | Operações | isInline | Booleano com um valor padrão de false |
| «cpp_body_comment» | Comentários que você deseja que apareçam no código-fonte, tais como comentários para funções e variáveis estáticas | ||
| «cpp_constructor» | Operações | isExplicit, isInline | Booleano com um valor padrão de false |
| memberInitializers | Cada cadeia especifica a lista
inicializadora do construtor de uma classe. A lista especifica os valores iniciais dos
atributos da classe ou da classe pai. Por exemplo, especifique a
seguinte cadeia para gerar uma lista inicializadora para um método de construtor de uma
classe chamada Class1 que tenha um atributo de inteiro denominado attribute1 e um
atributo de cadeia denominado name1:
attribute1(10),name1("Class1")
Não
coloque a cadeia entre aspas simples. A transformação gera o seguinte construtor:Class1::Class1() : attribute1(10),name1("Class1") { //TAREFA A FAZER Stub de método gerado automaticamente } |
||
| «cpp_copy_constructor» | Operações | isExplicit, isInline | Booleano com um valor padrão de false |
| memberInitializers | Cada cadeia especifica a lista
inicializadora do construtor de uma classe. A lista especifica os valores iniciais dos
atributos da classe ou da classe pai. Por exemplo, especifique a
seguinte cadeia para gerar uma lista inicializadora para um método de construtor de uma
classe chamada Class1 que tenha um atributo de inteiro denominado attribute1 e um
atributo de cadeia denominado name1:
attribute1(10),name1("Class1")
Não
coloque a cadeia entre aspas simples. A transformação gera o seguinte construtor:Class1::Class1() : attribute1(10),name1("Class1") { //TAREFA A FAZER Stub de método gerado automaticamente } |
||
| «cpp_dependency» | Relacionamentos de dependência | isForwardReference | Booleano com um valor-padrão de false; se o valor for configurado
como true, ele gera uma declaração de encaminhamento do tipo de fornecedor no arquivo de cabeçalho
da classe do cliente Mesmo se você definir essa propriedade para true, a transformação não gera
uma referência de encaminhamento nas seguintes situações:
|
| isInclusionInHeader | Booleano com um valor padrão de false; se o valor for configurado como true, ele gera uma diretiva #include no arquivo de cabeçalho da classe do cliente | ||
| «cpp_destructor» | Operações | isVirtual, isInline | Booleano com um valor padrão de false |
| «cpp_enum» | Enumerações | isAnonymousEnum | Booleano com um valor padrão de false; se o valor for configurado como true, a transformação gerará uma enumeração anônima |
| «cpp_external_inclusion» | Classes, interfaces | includeType | Enumeração com valores que especificam como a transformação gera diretivas de inclusão quando a classe importada não faz parte da origem de transformação |
| relativeToFolderInput | Cadeia; obrigatório se você especificar o valor Gere diretivas de inclusão que sejam relativas a essa pasta na propriedade includeType | ||
| specificFileNameInput | Cadeia; obrigatório se você especificar o valor Gere uma diretiva de inclusão que contenha o seguinte nome de arquivo na propriedade includeType | ||
| «cpp_friend» | Relacionamentos de dependência | Gera uma diretiva #include no arquivo de cabeçalho e declara a classe do fornecedor como um amigo da classe do cliente | |
| «cpp_generalization» | Relacionamentos de generalização, relacionamentos InterfaceRealization | GeneralizationKind | Enumeração com valores público, protegido, privado e padrão (0-público, 1-protegido, 2-privado, 3-padrão) |
| isVirtual | Booleano com um valor padrão de false; indica heranças virtuais | ||
| «cpp_internal_inclusion» | Classes, interfaces | includeType | Enumeração com valores que especificam como a transformação gera diretivas de inclusão quando a classe de importação e a classe importada fazem parte da origem de transformação |
| relativeToFolderInput | Cadeia; obrigatório se você especificar o valor Gere diretivas de inclusão que sejam relativas a essa pasta na propriedade includeType | ||
| specificFileNameInput | Cadeia; obrigatório se você especificar o valor Gere uma diretiva de inclusão que contenha o seguinte nome de arquivo na propriedade includeType | ||
| «cpp_namespace» | Pacotes | NamespaceName | Cadeia |
| «cpp_operation» | Operações | isInline | Booleano com um valor padrão de false; se o valor for configurado como true, gerará a operação como seqüencial e incluirá o corpo da operação no arquivo de cabeçalho correspondente |
| isVirtual | Booleano com um valor padrão de false; se o valor for configurado como true, gerará a operação como uma função virtual | ||
| isFriend | Booleano com um valor padrão de false; se o valor for configurado como true, gerará uma operação amigável | ||
| isGlobal | Booleano com um valor padrão false; se o valor for definido como true, irá gerar uma função global | ||
| «cpp_properties» | Classes, interfaces, enumerações | bodyFileExtension | Arquivo de corpo C++ com a extensão especificada |
| headerFileExtension | Arquivo de cabeçalho C++ com a extensão especificada Por
exemplo, para gerar código para uma classe de modelo C++ em um arquivo de cabeçalho que tenha
.inc como uma extensão de nome de arquivo, você pode aplicar esse estereótipo à classe
e configurar esta propriedade como ".inc".
Nota: Você deve associar a extensão de nome de arquivo .inc a um
arquivo de cabeçalho C++ para que o
C/C++ Development Tools
reconheça .inc como uma extensão de nome de arquivo C++ válida.
|
||
| «cpp_struct» | Classes | ||
| «cpp_type» | Propriedades, parâmetros | arrayDimensions | Essa é uma cadeia que é normalmente utilizada para especificar matrizes
multidimensionais que o UML 2.0 não suporta. Por exemplo, utilize essa cadeia para especificar uma matriz para uma propriedade: [10][20]; ou para um parâmetro do tipo sem retorno: [][10] |
| InitializerKind | Essa é uma enumeração com valores de construtor e de designação (0-construtor). Se a propriedade InitializerKind for definida como 0, a transformação gerará um inicializador de construtor. Se a propriedade InitializerKind for definida como 1, a transformação gerará uma instrução de designação no construtor. Consulte o Exemplo de como a transformação UML-para-C++ transforma elementos com o estereótipo «cpp_type» aplicado. |
||
| isAuto, isMutable, isRegister, isVolatile | Booleano com um valor padrão de false | ||
| qualifier | Essa é uma cadeia que contém a parte de um tipo C++ que não pode ser modelada
no UML, e que aparece antes do nome da variável a após o tipo, como ** e &. Por exemplo, const int **a[12][33] pode
ser representado por estes itens:
|
||
| Atributos | isGlobal | Booleano com um valor padrão false; se o valor for definido como true, irá gerar uma variável global | |
| «cpp_typedef» | Classes | arrayDimensions | Cadeia |
| ImplementationType | Essa cadeia especifica o tipo ao qual o typedef se refere; pode ser um tipo
primitivo ou definido pelo usuário. Os tipos definidos pelo usuário podem ser completos ou não. Se um nome de tipo não for completo, o escopo do typedef será aplicado ao tipo definido pelo usuário. |
||
| qualifier | Essa cadeia especifica tipos de ponteiro, constantes etc. Por exemplo, a
transformação gera const int **Typedef1[12][13] para um elemento UML da seguinte descrição:
|
||
| «cpp_union» | Classes | isAnonymousUnion | Booleano com um valor padrão de false |
| Elemento UML | Saída da Transformação |
|---|---|
![]() |
Class1.cpp:#include "Class1.h"
//Iniciar seção para o arquivo Class1.cpp
//TAREFA A FAZER: Incluir definições preservadas
//Encerrar seção para o arquivo Class1.cpp
//@generated "UML para C++ (com.ibm.xtools.transform.uml2.cpp.CPPTransformation)"
Class1::Class1() :
attribute1(5)
{
//TAREFA A FAZER Stub de método gerado automaticamente
attribute2 = true;
}
|