Regras de importação de estrutura da linguagem C ou C++
O Editor de ligação de evento importa estruturas de dados C e C++ usando as seguintes regras.
Os nomes de campos C e C++ são exibidos de acordo com as seguintes regras:
- Os caracteres que não são válidos nos nomes de elementos XML são substituídos
por 'X'.
Por exemplo, monthly-total se torna monthlyXtotal.
- Os nomes duplicados se tornam exclusivos pela adição de um ou mais
dígitos numéricos.
Por exemplo, duas instâncias de year se tornam year e year1.
As seguintes restrições também são aplicadas:
- Os arquivos de cabeçalho devem conter uma instância de estrutura de nível superior.
- Não é possível declarar um tipo de estrutura que contém ele mesmo como um membro.
- Os tipos de dados C e C++ a seguir não são suportados:
- decimal
- long double
- wchar_t (somente C++)
- Os caracteres a seguir são ignorados se estiverem presentes
no arquivo de cabeçalho.
- Especificadores de classe de armazenamento:
- auto
- register
- static
- extern
- mutable
- Qualificadores
- const
- volatile
- _Export (somente C++)
- Especificações de funções
- inline (somente C++)
- virtual (somente C++)
- Valores iniciais
- O arquivo de cabeçalho não deve conter estes itens:
- Uniões
- Declarações de classe
- Tipos de dados de enumeração
- Variáveis de tipo de ponteiro
- Declarações de modelo
- Macros predefinidas; isto é, macros com nomes que iniciam e terminam com dois caracteres de sublinhado (__)
- A sequência de continuação de linha (um símbolo \ que é imediatamente seguido por um caractere de nova linha)
- Declaradores de função de protótipo
- Diretivas do pré-processador
- Campos de bits
- A palavra-chave __cdecl (ou _cdecl) (somente C++)
- As palavras-chave reservadas por C++ a seguir não são suportadas:
- explicit
- using
- namespace
- typename
- typeid