C появлением новой версии языка MQL, не только изменился подход к работе с индикаторами, но и появились новые способы создания индикаторов. Кроме того, появилась дополнительная гибкость при работе с индикаторными буферами - теперь вы можете самостоятельно указать нужное направление индексации и получать ровно столько значений индикатора, сколько вам требуется. В этой статье рассмотрены базовые методы вызова индикаторов и получения данных из индикаторных буферов.
class A{
public:
void someDo() {}
};
class B{
public:
void B( A* aA ) : mA( aA ) {}
const A* getA() { return (mA); }
private:
A* mA;
};
void test(){
A a;
B b( GetPointer( a ) );
//Ошибки нет. И это правильно const A* a1 = b.getA();
//Ошибка есть: "...someDo' - call non-const method for constant object..". И это правильно
a1.someDo();
//Ошибки нет. Это НЕ правильно(CONST A* B::getA())!
A* a2 = b.getA();
//ошибки нет. Правильно (а2 не const)
a2.someDo();
}
你能告诉我,如果要调用的指标名称包含在一个变量中,为什么在获取指标句柄时发生错误?
我的意思是,不存在这样的错误。
这就是我们如何得到错误4802 (指标不能被创建)。
在这里 阅读关于测试仪_指示器 的信息。
我一遍又一遍地读着,重读着。))但我无法得到我需要的东西。我需要将指标的名称设置为一个变量。
那么,你是否添加了属性test_indicator?我不认为没有它,我就能做到。
我试过了。有些事情并不是这样的。你能给我看一个例子吗(也许我做错了)?
P.S. 它成功了。这再容易不过了。去休息了。))
P.S2。 但我得到的依赖是,我必须通过属性test_indicator 注册所有的指标。也就是说,如果指标名称是由外部参数指定的,而用户有一个新的指标,我们必须再次打开代码。这并不完全是我们想要的结果。
P.S2。 但我们仍然得到了不得不通过属性test_indicator 来编写所有指标的依赖性。也就是说,如果指标名称是由外部参数指定的,而用户有一个新的指标,我们必须再次打开代码。这并不完全是我们想要的结果。
这是在五个方面的做法。我自己用它从其他几个随机选择的指数中建立指数。也许开发者会告诉我们他们的想法。
问题是,MT5测试器中的EA是在终端之外启动的,不具备MT4中的所有库环境。
例如,专家顾问根本就被发送到云端,为了通过额外的链接,我们必须。
如果使用动态指标调用,你需要手动规定使用的指标 列表。当运行第三方测试时,所有的依赖文件都会与专家顾问一起发送。这些既可以是本地的(无论如何它们都在终端之外),也可以是远程或云端的代理。
这就是为 "按下启动键,不用考虑其他事情,一切都会自动工作 "所付出的代价。
整个观点是,MT5测试器中的EA在终端之外运行,没有MT4所拥有的所有库环境。
这就是为 "按下启动键,不用考虑其他事情,一切都会自动工作 "所付出的代价。
这个问题可能已经被提出来了,但我在论坛里找不到。
在下面的代码中(在test()方法中),当取一个对象的常量描述符(引用)并将其赋值给一个非常量对象时,编译器(MetaEditor 5.00, Build 687)没有产生错误。
这个问题可能已经被提出来了,但我在论坛上没有找到。
在下面的代码中(在test()方法中),当获得一个对象的常量描述符(引用)并将其赋值给一个非常量对象时,编译器(MetaEditor 5.00, Build 687)并没有产生错误。
这将是没有错误的情况。
就对象指针的速度向开发者提出的问题
为什么第一个代码
工作的速度是第二个的两倍?
2012.08.21 09:56:40 信息 (EURUSD,D1) 2=1654
2012.08.21 09:56:38 信息 (EURUSD,D1) 1=795
你能优化它以提高速度吗?