错误、漏洞、问题 - 页 460 1...453454455456457458459460461462463464465466467...3184 新评论 Stanislav Korotky 2011.07.15 14:25 #4591 voix_kas:该EA需要访问一个指标。你至少可以通过三种方式获得它:IndicatorCreate(...)或iCustome(...),或者,如果它是一个标准指标,例如,iMA(...)。据我所知,当使用任何变体时,你必须明确地释放产生的句柄(IndicatorRelease)。这个问题是关于选择调用指标的方式。每种方法的优点和缺点是什么?对处理速度的优先兴趣。IndicatorCreate - 用于标准指标,因此在手腕的情况下,它们是iMA调用的类似物。iCustom - 用于 "自定义 "的自定义指标。也就是说,本质上是不同的东西。iMA和IndicatorCreate(IND_MA)的调用速度应该是相当的,但我没有检查。至于 IndicatorRelease - 如果你在计算后不需要返回这个指标,那么调用它是有意义的。我没有这种情况--如果需要一些指标(有一组给定的参数),那么它将需要额外的计算/再计算,如果脚本的输入参数发生变化,那么一切都将被重新初始化,新的手柄将被创建。 Renat Fatkhullin 2011.07.15 18:59 #4592 事实上,99%的情况下,调用IndicatorRelease 是程序员的一个逻辑错误。指标的创建是最昂贵的操作之一,它引发了非常深入的计算机制。试图关闭一个指标手柄也是一个非常昂贵的操作,如果你考虑到其实施的真正过程。频繁地创建和关闭指标表明,开发者根本不了解操作的本质。它非常容易理解。 Документация по MQL5: Доступ к таймсериям и индикаторам / IndicatorRelease www.mql5.com Доступ к таймсериям и индикаторам / IndicatorRelease - Документация по MQL5 Alexander Puzikov 2011.07.16 02:04 #4593 Renat:事实上,在99%的情况下,调用 IndicatorRelease 是程序员的一个逻辑错误。创建一个指标是最昂贵的操作之一,会触发非常深的机制来计算它们。如果你考虑到其实施的真正底层过程,试图关闭一个指标手柄也是一个非常昂贵的操作。频繁地创建和关闭指标表明,开发者根本不了解操作的本质。它非常容易理解。 让我插话说:M-程序、终端、外汇的机制(事实上,我们为什么聚集在这里)。我们在这里的原因是简单的真理,那么是什么阻碍了我们理解这些真理,并为卢布割草--或我们要销售的软件。如果没有可能这样做,我们必须保持沉默,直到 "奇迹 "发生! Renat Fatkhullin 2011.07.16 04:13 #4594 Im_hungry:让我插话说:程序的机制、终端、外汇(基本上是我们在这里的目的)。我们必须谨慎对待我们所做的事情和我们不想做的事情。我们应该保持沉默,直到有 "奇迹 "发生!"。 一个不可理解的思想流的美丽例子。我羡慕这种能力。 Mykola Demko 2011.07.16 06:00 #4595 Renat: 一个不可理解的思想流的美丽例子。能够这样做是令人羡慕的。当然是80级的绝地,尤达大师在一旁静静地打坐 :)而且毫无疑问,他们 "在遇到困难时帮助无家可归的孩子"(来自12位主席)。 Андрей Павлов 2011.07.16 11:33 #4596 不久前,我的工作代码停止了编译。这是在指责标准库中 的代码。'GetLastError' - ambiguous call to overloaded function with the same parameters SymbolInfo.mqh 718 10 'GetLastError' - ambiguous call to overloaded function with the same parameters SymbolInfo.mqh 725 57 显然是因为我的代码中的内容。#import "kernel32.dll" uint GetLastError(); #import ..... kernel32::GetLastError() .... 我怎样才能 "消化 "这个问题,使我的程序重新运作?我不确定MQL的新版本有什么变化。是否不允许导入的函数与内置的函数有相同的名称?如何继续生活? --- 2011.07.16 12:09 #4597 7134956:我怎样才能 "消化 "这个问题,使我的程序重新运作?我不太明白MQL的新版本有什么变化。只需添加一个参数在#import "Kernel32.dll" uint GetLastError(int); #import Андрей Павлов 2011.07.16 13:44 #4598 sergeev: 内添加一个简单的参数 谢谢你!似乎有帮助。但是,传递一个多余的参数,这有点像拐杖。 --- 2011.07.16 14:52 #4599 让我们把它看作是一个功能或一个自动调试器。 TheXpert 2011.07.16 16:40 #4600 sergeev: 让我们把它看成是一个功能或自动调试器。你可以把它拿出来,包在一个单独的库里,重新命名。 你也可以尝试要求命名空间,但这可能没有用。 1...453454455456457458459460461462463464465466467...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
该EA需要访问一个指标。你至少可以通过三种方式获得它:IndicatorCreate(...)或iCustome(...),或者,如果它是一个标准指标,例如,iMA(...)。
据我所知,当使用任何变体时,你必须明确地释放产生的句柄(IndicatorRelease)。
这个问题是关于选择调用指标的方式。每种方法的优点和缺点是什么?对处理速度的优先兴趣。
IndicatorCreate - 用于标准指标,因此在手腕的情况下,它们是iMA调用的类似物。iCustom - 用于 "自定义 "的自定义指标。也就是说,本质上是不同的东西。
iMA和IndicatorCreate(IND_MA)的调用速度应该是相当的,但我没有检查。
至于 IndicatorRelease - 如果你在计算后不需要返回这个指标,那么调用它是有意义的。我没有这种情况--如果需要一些指标(有一组给定的参数),那么它将需要额外的计算/再计算,如果脚本的输入参数发生变化,那么一切都将被重新初始化,新的手柄将被创建。
事实上,99%的情况下,调用IndicatorRelease 是程序员的一个逻辑错误。
指标的创建是最昂贵的操作之一,它引发了非常深入的计算机制。试图关闭一个指标手柄也是一个非常昂贵的操作,如果你考虑到其实施的真正过程。频繁地创建和关闭指标表明,开发者根本不了解操作的本质。
它非常容易理解。
事实上,在99%的情况下,调用 IndicatorRelease 是程序员的一个逻辑错误。
创建一个指标是最昂贵的操作之一,会触发非常深的机制来计算它们。如果你考虑到其实施的真正底层过程,试图关闭一个指标手柄也是一个非常昂贵的操作。频繁地创建和关闭指标表明,开发者根本不了解操作的本质。
它非常容易理解。
让我插话说:M-程序、终端、外汇的机制(事实上,我们为什么聚集在这里)。
我们在这里的原因是简单的真理,那么是什么阻碍了我们理解这些真理,并为卢布割草--或我们要销售的软件。
如果没有可能这样做,我们必须保持沉默,直到 "奇迹 "发生!
让我插话说:程序的机制、终端、外汇(基本上是我们在这里的目的)。
我们必须谨慎对待我们所做的事情和我们不想做的事情。
我们应该保持沉默,直到有 "奇迹 "发生!"。
一个不可理解的思想流的美丽例子。能够这样做是令人羡慕的。
当然是80级的绝地,尤达大师在一旁静静地打坐 :)
而且毫无疑问,他们 "在遇到困难时帮助无家可归的孩子"(来自12位主席)。
不久前,我的工作代码停止了编译。
这是在指责标准库中 的代码。
显然是因为我的代码中的内容。我怎样才能 "消化 "这个问题,使我的程序重新运作?我不确定MQL的新版本有什么变化。
是否不允许导入的函数与内置的函数有相同的名称?如何继续生活?
我怎样才能 "消化 "这个问题,使我的程序重新运作?我不太明白MQL的新版本有什么变化。
只需添加一个参数在
内添加一个简单的参数
让我们把它看成是一个功能或自动调试器。
你可以把它拿出来,包在一个单独的库里,重新命名。
你也可以尝试要求命名空间,但这可能没有用。