Enumeradores
Dados do tipo enum pertencem a um determinado conjunto limitado de dados. Definindo o tipo enumerador:
enum nome do tipo enumerável
|
A lista de valores é uma lista de identificadores de constantes nomeados separados por vírgulas.
Exemplo:
enum months // enumeração de constantes nomeados
|
Após a enumeração ser declarada, um novo tipo de dados de inteiro de 4 bytes aparece. A declaração do novo tipo de dados permite ao compilador controlar rigidamente os tipos de parâmetros passados, porque a enumeração introduz novas constantes nomeadas. No exemplo acima, a constante nomeada January tem valor igual a 0, February - 1, December - 11.
Rule: Se um certo valor não estiver atribuído a uma constante nomeada que é membro da enumeração, seu novo valor será formado automaticamente. Se ele é o primeiro membro da enumeração, o valor 0 será atribuído a ele. Para todos os subseqüentes membros, os valores serão calculados baseados no valor dos membros anteriores adicionando um.
Exemplo:
enum intervals // Enumeração de constantes nomeadas
|
Observações
- Diferente do C++, o tamanho da representação interna do tipo enumerado no MQL5 é sempre igual a 4 bytes. Ou seja, sizeof(months) retorna o valor 4.
- Diferente do C++, uma enumeração anônima não pode ser declarada no MQL5. Ou seja, um nome único deve ser sempre especificado após a palavra-chave enum.
Também Veja