Erros, bugs, perguntas - página 1848

 
Artyom Trishkin:
O que aconteceu ao IndicatorDelete() na MQL5? O compilador não o reconhece.
Nunca o foi. Está confundido com IndicatorRelease
 
Slawa:
Nunca foi. Está confundido com IndicatorRelease
Ou com ChartIndicatorDelete
Документация по MQL5: Операции с графиками / ChartIndicatorDelete
Документация по MQL5: Операции с графиками / ChartIndicatorDelete
  • www.mql5.com
Операции с графиками / ChartIndicatorDelete - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Slawa:
Nunca foi. Está confundido com IndicatorRelease.
Só estou a dizer que é obra do maligno.
 
Criar sobrecargas desnecessárias de modelos que causam erros de compilação
template <typename T>
T Func()
{
  T Res;
  
  return(Res);
}

template <typename T>
void Func( T& Value )
{
  T Res = (MqlTick)Value;
}

void OnStart()
{
  Func<string>(); // без этой строки компилируется
  
  MqlTick Tick;
  
  Func(Tick);
}

O compilador tenta, por alguma razão, criar

void Func( string& );
 
void OnStart()
{
  int i = {0}; // code generation error
}

É evidente que o código está incorrecto, mas porquê este erro em particular?

 
Olá a todos, sou um novato! Pode informar se é possível em mql4/5 exibir um texto grande (100-200 palavras) na descrição do objecto num gráfico (linha de tendência/nível)? Quero manter um diário.
 
Caros programadores, como é que se livram dos Avisos nesta situação?
template <typename T>
T GetValue()
{
  T Res; // possible use of uninitialized variable 'Res'
  
  return(Res);
}

void OnStart()
{
  MqlTick Tick = GetValue<MqlTick>();
  int i = GetValue<int>();
}
 
Renat Fatkhullin:

Iremos verificar tudo em pormenor na segunda-feira.

Não posso responder neste momento sem testes.

Reproduzido, tal como em carraças de stock.

Fixação
 

Como posso obter o número do passe actual na mesma forma em que é apresentado no separador de resultados do optimizador em MQL5, por exemplo "27, 366" ou "18, 442" na primeira coluna? A função FrameNext permite obter o número de passe como ulong. Como obter a partir deste número o que é exposto ao utilizador? Preciso de exibir informação por passagens num relatório especial, e manter a mesma designação de passagens que no terminal.

 
Caros programadores, é possível encontrar uma solução normal para que a MQL não multiplique tais entidades?

Fórum sobre comércio, sistemas de comércio automatizados e testes estratégicos

Preciso de variáveis terminais globais de tipo string?

fxsaber, 2017.04.10 18:25

#define  GLOBAL_VARIABLE_SET(A)                                                        \
template <typename T>                                                                 \
  datetime _GlobalVariableSet( const string Name, const T A )                         \
  {                                                                                   \
    _GlobalVariableDel(Name);                                                         \
                                                                                      \
    double Array[];                                                                   \
                                                                                      \
    const datetime Res = GlobalVariableSet(Name, _ArrayCopy(Array, _R(Value).Bytes)); \
    const int Size = ArraySize(Array);                                                \
                                                                                      \
    for (int i = 0; i < Size; i++)                                                    \
      GlobalVariableSet(GetName(Name, i), Array[i]);                                  \
                                                                                      \
    return(Res);                                                                      \
  }

GLOBAL_VARIABLE_SET(Value)
GLOBAL_VARIABLE_SET(&Value)
GLOBAL_VARIABLE_SET(&Value[])