错误、漏洞、问题 - 页 2749 1...274227432744274527462747274827492750275127522753275427552756...3184 新评论 Alexey Navoykov 2020.05.21 14:32 #27481 Roman: 在前一页,fxsaber给出了测量结果。 我解释了为什么会出现这种情况。 始终以静态或动态方式分配内存。 如果你指的是大表,那么屏幕上只能看到左边的部分,其他部分被切断了,所以我不知道那里有什么。 但从代码上看,如果这个宏被比作 GetCurrentTick2(Tick, !i) 我每100次迭代只有一次函数调用。 而第一个宏在每次迭代时都有一次调用。 所以这没有意义。 Roman 2020.05.21 14:35 #27482 Alexey Navoykov: 如果你指的是大表,在屏幕上只有左边的部分是可见的,其他部分被切断了,所以我不知道那里有什么。 但从代码上看,如果这个宏被比作 而在第一个宏中,每100次迭代只有一个函数调用。 所以,这是无稽之谈。 编译器不是万能的,有时你必须参与进来,用正确的代码帮助它))。 Ilyas 2020.05.21 14:36 #27483 Sergey Dzyublik: ME调试器的错误(build 2370)--StepInto(F11)和手动设置断点不起作用。问题是,如果StepOver(F10)动作至少应用于一个函数调用,那么以后就没有办法调试这个函数了。回放步骤: 1) 在调试模式下运行代码; 2) 触发断点后,执行两次StepOver(F10); 一切 - 现在没有办法 "进入 "增量 函数,所有手动设置的断点都没有被触发,而且实际上执行的不是StepInto操作(F11),而是StepOver(F10)。 谢谢你的帖子。 纠正的是 Alexey Navoykov 2020.05.21 14:38 #27484 Roman: 编译器不是万能的,有时你必须参与其中 )) 你是什么意思? 你向我保证你的构造更快,但事实并非如此。 它只是在那段代码中被调用的可能性减少了100倍。 Sergey Dzyublik 2020.05.21 14:41 #27485 Alexey Navoykov: 在第一个宏中,每100次迭代只有一个函数调用。 所以这是无稽之谈。 如果不是为了挑剔精度,我们在这里不需要,测试是正负正常。 相比之下:调用100次SymbolInfoTick与调用1次SymbolInfoTick并返回99次 "手动 "缓存。 显示了当当前符号的标准SymbolInfoTick函数将在一次调用中被多次调用时,使用该函数是如何的不划算。 作为问题的一个可能的解决方案,开发者建议引入一个预定义的变量。 const MqlTick _Tick; // Текущий _Symbol-тик. 只是,fxsaber 把所有东西都散落在帖子里,根本没有解释,这是一件很糟糕的事情。 Igor Makanu 2020.05.21 14:44 #27486 Alexey Navoykov: 在第一个宏中,每100次迭代只有一个函数调用。 所以这是无稽之谈。 他的例子是在MQL程序的不同部分具体使用买入/卖出数据,你访问SymbolInfoTick()的频率越高,测试性能就越低。 我发现TimeCurrent()有一些性能问题,我用不同的方法尝试过,然后放弃了。 我很少使用全局变量的可见性,但为了让一切都在测试器中 "飞 "起来,我是这样写的。 MqlTick Tick = {0}; #define Ask Tick.ask #define Bid Tick.bid #define TimeCurrent_ Tick.time //+------------------------------------------------------------------+ void OnTick() { SymbolInfoTick(_Symbol,Tick); .... } Roman 2020.05.21 14:46 #27487 Alexey Navoykov: 什么意思? 你向我保证你的设计更快,它不是更快,只是在那段代码中被调用的可能性减少了100倍。 这不是我的设计,按照我对那个例子的理解,宏被逐一调用进行测试。 而通过报告是一起显示的,尽管它被裁剪了,但你可以看到执行时间。 Alexey Navoykov 2020.05.21 14:47 #27488 Sergey Dzyublik: 如果你不关心准确性(你不需要),这个测试是正负正常。 比较:调用100次SymbolInfoTick与调用1次SymbolInfoTick并返回99次 "手动 "缓存。 是的,我明白缓存的问题。只是罗曼在这里擦了一些关于内存分配的东西......看来你对巨魔的看法是正确的 ) Roman 2020.05.21 14:56 #27489 Alexey Navoykov: 我知道缓存的事。只是罗曼在这里擦了一些关于内存分配的东西......看来你对巨魔的看法是正确的 ) 你认为缓冲区是在哪里分配的?你们这些蠢货。 fxsaber 2020.05.21 15:01 #27490 Sergey Dzyublik: 如果你不关心准确性(你不需要),这个测试是正负正常。 比较:调用100次SymbolInfoTick与调用1次SymbolInfoTick并返回99次 "手动 "缓存。 显示了当当前符号的标准SymbolInfoTick函数将在一次调用中被多次调用时,使用该函数是如何的不划算。 作为问题的一个可能的解决方案,我们鼓励开发者引入一个预定义的变量。 你百分之百明白我的意思。 原因是,fxsaber 在他的帖子中把所有东西都散布开来,没有解释,很难理解。 对不起,我表述得不好。 1...274227432744274527462747274827492750275127522753275427552756...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
在前一页,fxsaber给出了测量结果。
我解释了为什么会出现这种情况。
始终以静态或动态方式分配内存。
如果你指的是大表,那么屏幕上只能看到左边的部分,其他部分被切断了,所以我不知道那里有什么。
但从代码上看,如果这个宏被比作
我每100次迭代只有一次函数调用。 而第一个宏在每次迭代时都有一次调用。 所以这没有意义。
如果你指的是大表,在屏幕上只有左边的部分是可见的,其他部分被切断了,所以我不知道那里有什么。
但从代码上看,如果这个宏被比作
而在第一个宏中,每100次迭代只有一个函数调用。 所以,这是无稽之谈。
编译器不是万能的,有时你必须参与进来,用正确的代码帮助它))。
ME调试器的错误(build 2370)--StepInto(F11)和手动设置断点不起作用。问题是,如果StepOver(F10)动作至少应用于
一个函数调用,那么以后就没有办法调试这个函数了。
回放步骤:
1) 在调试模式下运行代码;
2) 触发断点后,执行两次StepOver(F10);
一切 - 现在没有办法 "进入 "增量 函数,所有手动设置的断点都没有被触发,而且实际上执行的不是StepInto操作(F11),而是StepOver(F10)。
谢谢你的帖子。
纠正的是
编译器不是万能的,有时你必须参与其中 ))
在第一个宏中,每100次迭代只有一个函数调用。 所以这是无稽之谈。
如果不是为了挑剔精度,我们在这里不需要,测试是正负正常。
相比之下:调用100次SymbolInfoTick与调用1次SymbolInfoTick并返回99次 "手动 "缓存。
显示了当当前符号的标准SymbolInfoTick函数将在一次调用中被多次调用时,使用该函数是如何的不划算。
作为问题的一个可能的解决方案,开发者建议引入一个预定义的变量。
只是,fxsaber 把所有东西都散落在帖子里,根本没有解释,这是一件很糟糕的事情。
在第一个宏中,每100次迭代只有一个函数调用。 所以这是无稽之谈。
他的例子是在MQL程序的不同部分具体使用买入/卖出数据,你访问SymbolInfoTick()的频率越高,测试性能就越低。
我发现TimeCurrent()有一些性能问题,我用不同的方法尝试过,然后放弃了。
我很少使用全局变量的可见性,但为了让一切都在测试器中 "飞 "起来,我是这样写的。
什么意思? 你向我保证你的设计更快,它不是更快,只是在那段代码中被调用的可能性减少了100倍。
这不是我的设计,按照我对那个例子的理解,宏被逐一调用进行测试。
而通过报告是一起显示的,尽管它被裁剪了,但你可以看到执行时间。
如果你不关心准确性(你不需要),这个测试是正负正常。
比较:调用100次SymbolInfoTick与调用1次SymbolInfoTick并返回99次 "手动 "缓存。
是的,我明白缓存的问题。只是罗曼在这里擦了一些关于内存分配的东西......看来你对巨魔的看法是正确的 )
我知道缓存的事。只是罗曼在这里擦了一些关于内存分配的东西......看来你对巨魔的看法是正确的 )
你认为缓冲区是在哪里分配的?你们这些蠢货。
如果你不关心准确性(你不需要),这个测试是正负正常。
比较:调用100次SymbolInfoTick与调用1次SymbolInfoTick并返回99次 "手动 "缓存。
显示了当当前符号的标准SymbolInfoTick函数将在一次调用中被多次调用时,使用该函数是如何的不划算。
作为问题的一个可能的解决方案,我们鼓励开发者引入一个预定义的变量。
你百分之百明白我的意思。
原因是,fxsaber 在他的帖子中把所有东西都散布开来,没有解释,很难理解。
对不起,我表述得不好。