EnumToString

Converte um valor de enumeração de qualquer tipo para forma de texto.

string  EnumToString(
   any_enum  value      // qualquer tipo de valor de enumeração
   );

Parâmetros

value

[in]  Qualquer tipo de valor de enumeração.

Valor do Retorno

Uma string com uma representação de texto da enumeração. Para obter a mensagem de erro chame a função GetLastError().

Observação

A função pode definir os seguintes valores de erro na variável _LastError:

  • ERR_INTERNAL_ERROR — erro do ambiente de execução
  • ERR_NOT_ENOUGH_MEMORY — sem memória suficiente para concluir a operação
  • ERR_INVALID_PARAMETER — não pode permitir o nome do valor da enumeração

 

Exemplo:

enum interval  // Enumeração de constantes nomeadas
  {
   month=1,     // intervalo de um mês
   two_months,  // dois meses
   quarter,     // três meses - um quadrimestre
   halfyear=6,  // meio ano
   year=12,     // um ano - 12 months
  };
//+------------------------------------------------------------------+
//| Programa Script da função start (iniciar)                        |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- define o intervalo de tempo igual a um mês
   interval period=month;
   Print(EnumToString(period)+"="+IntegerToString(period));
 
//--- define o intervalo de tempo igual a um quadrimestre (três meses)
   period=quarter;
   Print(EnumToString(period)+"="+IntegerToString(period));
 
//--- define o intervalo de tempo igual a um ano (12 meses)
   period=year;
   Print(EnumToString(period)+"="+IntegerToString(period));
 
//--- verifica como o tipo de ordem é mostrado
   ENUM_ORDER_TYPE type=ORDER_TYPE_BUY;
   Print(EnumToString(type)+"="+IntegerToString(type));
 
//--- verifica como valores incorretos são mostrados
   type=WRONG_VALUE;
   Print(EnumToString(type)+"="+IntegerToString(type));
 
// Resultado:
// month=1
// quarter=3
// year=12
// ORDER_TYPE_BUY=0
// ENUM_ORDER_TYPE::-1=-1
  }

Também Veja

Enumerações, Variáveis de entrada