错误、漏洞、问题 - 页 1877

 
kaus_bonus:

在MT5中清除测试器代理缓存的时间是什么?



你问我答))

我得到的缓存清除时间是6分钟。在这段时间内,测试员的临时文件夹被清除,然后数据准备再次进行。

这是很荒谬的。

 
Sergey Dzyublik:
请告诉我是否有计划将模板的使用添加到工会中,以便你能做到这一点。
绕过--请看TypeToBytes中是如何实现的。
 
这种情况下的错误是否正确?如何在不移除const的情况下绕过它?
struct STRUCT
{
  const MqlTick Data;
  
  STRUCT( MqlTick &Tick ) : Data(Tick) {} // 'Data' - constructor not defined
};
 

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

虫子、虫子、问题

fxsaber, 2017.04.10 16:23

创建不必要的模板重载,导致编译错误
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& );
1595年--从未修复。
 
顾问
input int i = 0;

void OnInit() {}

优化器参数 1595

Brute-optimisation花了5.5分钟,至少可以说是不正确的。

所有日志都在所附文件中。请签字确认是否可重复使用。

附加的文件:
Tester.zip  24 kb
 
fxsaber:
1595年--从未修复。


移除明确的Struct cast,一切都能正常工作。

template <typename T>
T Func(){
  T Res;
  return(Res);
}

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

void OnStart()
{
  Func<string>(); 
  
  MqlTick Tick;
  Func(Tick);
}


 
Sergey Dzyublik:


移除明确的Struct cast,一切都能正常工作。

开发商已经确认了SD中的错误。仔细看,演员不在那里。
 
fxsaber:
开发商已经确认了SD中的错误。仔细看,铸件不在那里。

template <typename T>
void Func( T& Value )
{
  T Res = (MqlTick) Value;
}
那么这种操作叫什么呢?
 
Sergey Dzyublik:


移除明确的Struct cast,一切都能正常工作。

两个问题。

1.这个代码记录的是什么?

2. cast与选择正确的函数重载 的错误有什么关系?

 
在MT5 1595 32位上的工作都是完美的(Win7 64位)。


template <typename T>
T Func(){
  T Res;
  Print (__FUNCTION__);
  return(Res);
}

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

void OnStart()
{
  Func<string>(); 
  
  MqlTick Tick;
  Func(Tick);
}

结果。
2017.04.26 14:51:14.834 WebTest (EURUSD,H4) Func<string>。
2017.04.26 14:51:14.836 WebTest (EURUSD,H4) Func<MqlTick>


没有函数选择的错误,怎么会与没有的事实有关呢))