错误、漏洞、问题 - 页 2467 1...246024612462246324642465246624672468246924702471247224732474...3184 新评论 Sergey Dzyublik 2019.05.21 10:13 #24661 Igor Makanu:我第一次尝试为一个二维数组做一个封装类,但我无法重载[]来把它当作一个普通的二维数组arr[1][2]。这样的问题在4-5年前就已经解决了,当时有一个独立的分支,有现成的解决方案。 很少有活跃的参与者 能活到今天,他们中的大多数都被淘汰了......。 P.s. 这不是一个二维阵列,而是一个关于类的三维阵列。 Sergey Dzyublik 2019.05.21 10:25 #24662 哦,我想我找到了那条线https://www.mql5.com/ru/forum/6729 В MQL5 всегда есть место подвигу ! ;) 2012.05.16www.mql5.com Общее обсуждение: В MQL5 всегда есть место подвигу ! ;) Artyom Trishkin 2019.05.21 10:35 #24663 Sergey Dzyublik:这样的问题在4-5年前就已经解决了,当时有一个独立的分支,有现成的解决方案。在活跃的参与者 中,很少有人能活到今天,大多数人都被重新封杀...... P.s. 这不是一个二维阵列,而是一个关于类的三维阵列。好吧,我去看了那条线--没有一个账户被禁止或删除。该支部的所有人员都在那里,而且仍然活着。 你就是这样决定制造一个丑闻,把它扔给政府?这很傻,不是吗?不要再在这里看到邪恶。 Igor Makanu 2019.05.21 10:51 #24664 Sergey Dzyublik: 哦,我想我找到了那个分支https://www.mql5.com/ru/forum/6729我想我上个月读过这个主题,我今晚再看看 但我对重载[][]的实验最后发现,我可以用重载[][]在MQL中实现L-value或R-value。 如果你有一个完整的动态二维数组的解决方案--把它放在CodeBase中,这是一个有用的东西--我找了找,没有比MT的CMatrixDouble更好的了:#include Math Alglib Sergey Dzyublik 2019.05.21 10:54 #24665 class A{ public: uchar data1; }; A func(){ A a; a.data1 = 1; return a; //object of 'A' cannot be returned, copy constructor 'A::A(const A &)' not found } void OnStart(){ A a; //1 A aa = a; a = aa; //2 a = func(); } /1和/2之间的区别是什么? 不幸的是,当在具有任意数据类型 的容器中使用模板时,这个问题无法避免。 作为一种特殊情况,为了解决这个问题,我们可以实现继承,为父类定义一个拷贝构造函数,并将问题函数中的返回类型从基类替换为父类。 Sergey Dzyublik 2019.05.21 13:55 #24666 开发人员。 请添加一个函数,返回一个数组的容量(内存中保留的元素数量)。不要与ArrayResize 的保留参数相混淆。 字符串有StringBufferLen,而数组则没有。 Sergey Dzyublik 2019.05.21 16:17 #24667 关于交易、自动交易系统和交易策略测试的论坛 虫子,虫子,问题 Sergey Dzyublik, 2019.05.22 16:01 再次感谢TheXpert 提供的代码。 我们在ArrayResize capacity MT5(build 2057)上有如下结果。 结果。2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TEST_ArrayCapacity:TEST_ArrayCapacity 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,100,0):100 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,100,100):100 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,101,100):201 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,200,100):201 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,201,100):201 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,202,100):302 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,100,1):302 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,100,400):302 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,300,400):302 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,301,600):302 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,302,600):302 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,303,600):903 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,100,0):903 2019.05.22 17:00:50.249 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,100,100):903 2019.05.22 17:00:50.250 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,100,-1):100 2019.05.22 17:00:50.250 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,100,100):100 2019.05.22 17:00:50.250 Test_array_resize (EURUSD,H1) TestArrayCapacity(store,105,100):205 Michael2K 2019.05.21 16:42 #24668 晚上好! 谁能告诉我发生了什么事? 这是我第一次看到这种情况发生。其中一个函数中的简单代码。 double yyy=28/50*100; Print("test yyy=", yyy);结果。 "2019.05.21 19:38:29.364 2019.04.01 00:05:00 test yyyy=0.0" Sergey Dzyublik 2019.05.21 16:58 #24669 Michael2K:晚上好!谁能告诉我发生了什么事?int(28) / int(50) * int(100) == int(0) * int(100) == int(0) == double(0.0)使用句号来指定双倍类型。double yyy=28./50*100; Alexey Navoykov 2019.05.21 22:27 #24670 Sergey Dzyublik: 也请提供在ArrayResize中使用reserve_size参数的伪代码。 没有描述当为下一个ArrayResize设置一个新的reserve_size值时,系统会如何表现。 Sergey Dzyublik: 顺序调用时,以下假设是否正确。 他们曾经在这个主题中给出的伪代码,查一查。 在我的印象中,只有当数组大小 超过这个容量时,那里的容量才会增加。 当然,有些东西可能已经改变。 而得到一个saracity的值的功能真的非常有用。 1...246024612462246324642465246624672468246924702471247224732474...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我第一次尝试为一个二维数组做一个封装类,但我无法重载[]来把它当作一个普通的二维数组arr[1][2]。
这样的问题在4-5年前就已经解决了,当时有一个独立的分支,有现成的解决方案。
很少有活跃的参与者 能活到今天,他们中的大多数都被淘汰了......。
P.s. 这不是一个二维阵列,而是一个关于类的三维阵列。
这样的问题在4-5年前就已经解决了,当时有一个独立的分支,有现成的解决方案。
在活跃的参与者 中,很少有人能活到今天,大多数人都被重新封杀......
P.s. 这不是一个二维阵列,而是一个关于类的三维阵列。
好吧,我去看了那条线--没有一个账户被禁止或删除。该支部的所有人员都在那里,而且仍然活着。
你就是这样决定制造一个丑闻,把它扔给政府?这很傻,不是吗?不要再在这里看到邪恶。
哦,我想我找到了那个分支https://www.mql5.com/ru/forum/6729
我想我上个月读过这个主题,我今晚再看看
但我对重载[][]的实验最后发现,我可以用重载[][]在MQL中实现L-value或R-value。
如果你有一个完整的动态二维数组的解决方案--把它放在CodeBase中,这是一个有用的东西--我找了找,没有比MT的CMatrixDouble更好的了:#include Math Alglib
/1和/2之间的区别是什么?
不幸的是,当在具有任意数据类型 的容器中使用模板时,这个问题无法避免。
作为一种特殊情况,为了解决这个问题,我们可以实现继承,为父类定义一个拷贝构造函数,并将问题函数中的返回类型从基类替换为父类。
请添加一个函数,返回一个数组的容量(内存中保留的元素数量)。不要与ArrayResize 的保留参数相混淆。
字符串有StringBufferLen,而数组则没有。
关于交易、自动交易系统和交易策略测试的论坛
虫子,虫子,问题
Sergey Dzyublik, 2019.05.22 16:01
再次感谢TheXpert 提供的代码。我们在ArrayResize capacity MT5(build 2057)上有如下结果。
结果。
晚上好!
谁能告诉我发生了什么事?
这是我第一次看到这种情况发生。其中一个函数中的简单代码。
结果。
"2019.05.21 19:38:29.364 2019.04.01 00:05:00 test yyyy=0.0"
晚上好!
谁能告诉我发生了什么事?
int(28) / int(50) * int(100) == int(0) * int(100) == int(0) == double(0.0)
使用句号来指定双倍类型。
也请提供在ArrayResize中使用reserve_size参数的伪代码。
没有描述当为下一个ArrayResize设置一个新的reserve_size值时,系统会如何表现。
顺序调用时,以下假设是否正确。
他们曾经在这个主题中给出的伪代码,查一查。 在我的印象中,只有当数组大小 超过这个容量时,那里的容量才会增加。 当然,有些东西可能已经改变。
而得到一个saracity的值的功能真的非常有用。