错误、漏洞、问题 - 页 2309

 

更新到1910年 ,指标缓冲区 在可视化模式下在测试器中 "反弹"。

有可能得到正确的指标值。下面你可以看到,趋势线(红色)已经叠加在ZigZag指标(黄色)的所得值上,以进行控制。


 

在测试器中可能发生了什么变化,使一些EA现在在可视化模式下工作,但在正常的单次运行中不工作?

而现在在这种条件下,如何才能找出这个问题的原因呢?

 

你能告诉我,我哪里愚蠢吗?

template <typename T1, typename T2>
T1 f( T2 Value )
{
  return((T1)Value);
}

double d = f<double>(0); // 'f' - wrong template parameters count
 
fxsaber:

你能告诉我,我哪里愚蠢吗?

你要么明确指定所有的 参数,要么不指定。

 
TheXpert:

要么你明确指定所有的 参数,要么你不指定。

这在代码中似乎是完全不含糊的。T2是int, T1是double。

 
fxsaber:

似乎在代码中是完全不明确的。T2是int, T1是double。

是的。这并不重要,你仍然需要指定两个参数

 
TheXpert:

是的,这并不重要,你仍然必须指定两个参数

我还没有意识到,谢谢

 

如何实现一个函数的输入参数的默认值?

typedef void (*FUNC)();

void f1() {};

void f2( FUNC g = f1 ) {} // 'f1' - constant expected
 
fxsaber:

如何实现一个函数的输入参数的默认值?

通过超载?
 
TheXpert:
通过超载?

这是可以理解的。我问的不是变通方法,而是正确的语法,这样编译器就不会产生错误。我认为在C++中可以做到这一点,而且很可能在MQL5中也可以。