错误、漏洞、问题 - 页 1848

 
Artyom Trishkin:
MQL5中的IndicatorDelete()是怎么回事?编译器不认识它。
它从来都是如此。你对指标释放 的问题感到困惑
 
Slawa:
它从来都不是。你对指标释放 的问题感到困惑
或者用ChartIndicatorDelete
Документация по MQL5: Операции с графиками / ChartIndicatorDelete
Документация по MQL5: Операции с графиками / ChartIndicatorDelete
  • www.mql5.com
Операции с графиками / ChartIndicatorDelete - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Slawa:
它从来都不是。你和IndicatorRelease 混淆了。
我只是说这是恶者的工作。
 
创建不必要的模板重载,导致编译错误
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);
}

编译器出于某种原因,试图创建

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

很明显,代码是不正确的,但为什么会出现这种特殊的错误?

 
大家好,我是一个新手!请告知在mql4/5中是否可以在图表(趋势线/水平)的对象描述 中显示一个大的文本(100-200字)?我想写一本日记。
 
亲爱的开发者,在这种情况下,你如何摆脱警告?
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:

我们将在周一详细检查一切。

没有测试,我现在无法回答。

复制,如对股票的蜱虫。

修复
 

当我在OnTesterPass处理程序中时,我怎样才能以与优化器结果标签中显示的相同形式获得当前通过的数字,例如,在结果标签的第一列中写上 "27, 366 "或 "18, 442"?FrameNext函数 允许你以ulong的形式获得通行证号码。如何从这个数字中得到显示给用户的内容?我需要在一份特别报告中按通道显示信息,并保持与终端相同的通道指定。

 
亲爱的开发者,是否有可能为MQL找到一个正常的解决方案,不增加这样的实体?

关于交易、自动交易系统和策略测试的论坛

我需要字符串类型的全局终端变量吗?

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[])