对MT5的祝愿 - 页 70 1...636465666768697071727374757677...117 新评论 Renat Fatkhullin 2011.06.28 19:32 #691 MetaDriver: 对编纂者,一个建议。请让小结构按值传输,而不仅仅是按引用传输。 因为所有复杂/有理数的算术都慢得可怕。请解释一下,通过引用传递而不是结构值传输,怎么会慢下来?最好有一个例子。一旦我们允许按价值传递结构,真正的刹车就开始了。开发人员会在不知不觉中到处使用通过堆栈传递的巨大结构,他们的程序会被减慢。 TheXpert 2011.06.28 20:00 #692 MetaDriver:多重继承绝对是邪恶的。Ы?如何继承两个接口?我赞成与利物浦合并,而不是与利物浦合并。 考虑到几代人的经验,那里更有意义。 至少要有基本的东西。这样的表达方式是公然的扯皮行为。 Slava 2011.06.29 08:23 #693 MetaDriver: 对编译器的要求。 请让小结构按值传输,而不仅仅是按引用传输,因为所有复杂/有理数的算术都慢得可怕。 简单地设置一个限制(由你决定--32或64字节),超过这个限制,编译器就不传递以值传递的结构,严格要求以引用传递。 另外,如果能把小的结构作为函数结果返回,那就非常好了。 -- 我甚至投票支持操作者超载。我希望我有一天会去做这件事。看来,"与C++合并 "的路线已被采纳并得到普遍支持。 用非标准的数学对象进行算术运算的函数式语法非常不方便,而且速度也会变慢很多。 因为它不能被内联替换所取代,而且需要花费函数调用。 不,只参考结构。没有例外。给我们一些刹车的数字,以便我们能够估计灾难的规模。 我们曾经有一个选项,可以将结构作为函数结果返回。 最终,由于实现的模糊性(我们的内部调试),我们推翻了这个选项。我们决定,既然结构是通过引用传递的,那就把产生的结构作为参数传递。 操作符的重载是可能的。但不是现在。 Konstantin Gruzdev 2011.06.29 20:47 #694 开发人员:请让OnTimer()在没有 连接到图表的指标中工作。 [删除] 2011.06.29 20:50 #695 Lizar: 开发人员:请让OnTimer()在没有 连接到图表的指标中工作。+1000 Vladimir Gomonov 2011.06.29 23:35 #696 stringo: 1.不,结构只参考。没有例外。对于刹车,请给出数字,以便我们能够估计灾难的规模。 2.我们曾经有一个选项,可以将结构作为函数结果返回,但由于实现上的模糊性(我们的内部争吵),我们最终推翻了这个选项。我们决定,既然结构是通过引用传递的,那就把产生的结构作为参数传递。 3.运算符的重载是可能的。但不是现在。1.:) 《大灾难》被取消了。 我测了一下,非常惊讶,刹车不在里面(剧本在预告片里)。我自己搜索并优化。 但在许多情况下语法更方便,当你可以在参数中替代表达式时。是的。好吧,我可以接受这个。这是可以忍受的。最主要的是,它没有放慢速度。但是我们可以把结构重新赋值回来吗? 结构的赋值是完全合法的,所以我们也允许它回来。 当函数执行结果的赋值在语法上是统一的,程序的可读性就更强了。 Y = Func(X); - 在简单阅读代码时,它看起来比Func(X, Y); //你应该猜到Y是一个输出参数。不,斯特劳斯楚普不会喜欢你的解决方案......这在某种程度上是不对的......:)3.哦!那就好。谢谢你的帮助。 附加的文件: RefValTest.mq5 3 kb Slava 2011.06.30 08:27 #697 MetaDriver: 我们是否也可以合法地重新赋值结构,所以我们也允许重新赋值。 当函数结果的赋值在语法上统一后,程序的可读性就更强了。 我告诉你一个秘密。就这样做吧。 结果他们没有切断它。你可以返回简单的结构。但请记住,在这种情况下,你将不得不增加2个额外的拷贝--拷贝到堆栈上的节奏结构中,以及从节奏结构中拷贝到结果结构中。 Документация по MQL5: Основы языка / Типы данных / Структуры и классы www.mql5.com Основы языка / Типы данных / Структуры и классы - Документация по MQL5 Denis Kirichenko 2011.06.30 10:48 #698 为什么CExpert 类,从标准库中 在文档中这样声明。class CExpert : public CObject 在Expert.mqh文件中,我们看到这个声明? class CExpert : public CExpertBase Документация по MQL5: Стандартная библиотека www.mql5.com Стандартная библиотека - Документация по MQL5 Denis Kirichenko 2011.06.30 11:10 #699 有必要写一篇关于创建和测试交易策略的课程的文章... Anton 2011.06.30 11:32 #700 Lizar: 开发人员:请让OnTimer()在没有 连接到图表的指标中工作。 目前,这是不可能的。设置定时器 的函数应该被称为ChartSetTimer(),这个名字更准确地反映了它的行为。 Документация по MQL5: Работа с событиями / EventSetTimer www.mql5.com Работа с событиями / EventSetTimer - Документация по MQL5 1...636465666768697071727374757677...117 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
对编纂者,一个建议。
请让小结构按值传输,而不仅仅是按引用传输。 因为所有复杂/有理数的算术都慢得可怕。
请解释一下,通过引用传递而不是结构值传输,怎么会慢下来?最好有一个例子。
一旦我们允许按价值传递结构,真正的刹车就开始了。开发人员会在不知不觉中到处使用通过堆栈传递的巨大结构,他们的程序会被减慢。
多重继承绝对是邪恶的。
Ы?如何继承两个接口?
我赞成与利物浦合并,而不是与利物浦合并。 考虑到几代人的经验,那里更有意义。
对编译器的要求。
请让小结构按值传输,而不仅仅是按引用传输,因为所有复杂/有理数的算术都慢得可怕。
简单地设置一个限制(由你决定--32或64字节),超过这个限制,编译器就不传递以值传递的结构,严格要求以引用传递。
另外,如果能把小的结构作为函数结果返回,那就非常好了。
--
我甚至投票支持操作者超载。我希望我有一天会去做这件事。看来,"与C++合并 "的路线已被采纳并得到普遍支持。
用非标准的数学对象进行算术运算的函数式语法非常不方便,而且速度也会变慢很多。
因为它不能被内联替换所取代,而且需要花费函数调用。
不,只参考结构。没有例外。给我们一些刹车的数字,以便我们能够估计灾难的规模。
我们曾经有一个选项,可以将结构作为函数结果返回。 最终,由于实现的模糊性(我们的内部调试),我们推翻了这个选项。我们决定,既然结构是通过引用传递的,那就把产生的结构作为参数传递。
操作符的重载是可能的。但不是现在。
开发人员:请让OnTimer()在没有 连接到图表的指标中工作。
1.不,结构只参考。没有例外。对于刹车,请给出数字,以便我们能够估计灾难的规模。
2.我们曾经有一个选项,可以将结构作为函数结果返回,但由于实现上的模糊性(我们的内部争吵),我们最终推翻了这个选项。我们决定,既然结构是通过引用传递的,那就把产生的结构作为参数传递。
3.运算符的重载是可能的。但不是现在。
1.:) 《大灾难》被取消了。 我测了一下,非常惊讶,刹车不在里面(剧本在预告片里)。我自己搜索并优化。 但在许多情况下语法更方便,当你可以在参数中替代表达式时。是的。好吧,我可以接受这个。这是可以忍受的。最主要的是,它没有放慢速度。
但是我们可以把结构重新赋值回来吗? 结构的赋值是完全合法的,所以我们也允许它回来。 当函数执行结果的赋值在语法上是统一的,程序的可读性就更强了。
Y = Func(X); - 在简单阅读代码时,它看起来比Func(X, Y); //你应该猜到Y是一个输出参数。
不,斯特劳斯楚普不会喜欢你的解决方案......这在某种程度上是不对的......:)
3.哦!那就好。谢谢你的帮助。
我们是否也可以合法地重新赋值结构,所以我们也允许重新赋值。 当函数结果的赋值在语法上统一后,程序的可读性就更强了。
我告诉你一个秘密。就这样做吧。
结果他们没有切断它。你可以返回简单的结构。但请记住,在这种情况下,你将不得不增加2个额外的拷贝--拷贝到堆栈上的节奏结构中,以及从节奏结构中拷贝到结果结构中。
为什么CExpert 类,从标准库中 在文档中这样声明。
在Expert.mqh文件中,我们看到这个声明?
开发人员:请让OnTimer()在没有 连接到图表的指标中工作。