文章 "MQL5 编程基础:列表" - 页 7 12345678910 新评论 Dmitry Fedoseev 2013.12.27 12:19 #61 因为必须使用 switch,所以就失去了意义。如果是这样的话,就可以不做多余的改动,只需为每种类型的对象使用不同的数组即可。所以,"国王是赤身裸体的"。 Dmitry Fedoseev 2013.12.27 12:22 #62 有时,这里的许多人或某些人似乎混淆了狂热与现实、理想与可能。他们不是拿着铁锹去挖掘,而是老谋深算地炫耀铁锹的主题:"也许这里是边缘,所以要把它磨得锋利些","也许这里有一个转角"....。一切都在铲子的层面上结束。 Vasiliy Sokolov 2013.12.27 12:35 #63 Integer: 因为必须使用 switch,所以就失去了意义。如果是这样的话,就可以不做多余的改动,只需为每种类型的对象使用不同的数组即可。所以,"国王是赤身裸体的"。这证明了工作表可以包含任何类型的对象。另外,如果每种类型都包含有关其类型的附加信息,那么就可以动态识别。这种 "附加信息 "是一个薄弱环节,但不幸的是,MQL 没有提供类型控制工具,所以我们不能没有它。如果有人知道更好的解决方案:请提交代码,我们会很乐意看到它。好像您的评论暗示您还没有处理过 "模板方法 "模式))) Dmitry Fedoseev 2013.12.27 12:41 #64 C-4:演示工作表可以包含任何类型的对象。2.您的评论暗示您没有处理过 "模板方法 "模式)) ))1. 这当然很好。但它有什么用呢?2.是的,那么......?我是不是失去了很多?这又是一次关于如何用铲子 "磨 "或 "弯 "东西的对话。 Dmitry Fedoseev 2013.12.27 12:43 #65 我们这里所说的 "模式 "是什么?是某个人把自己的思维方式强加于人,而所有人都跟着起舞吗?为什么这些 "模式 "会被提升到如此高的地位? Vasiliy Sokolov 2013.12.27 12:43 #66 Integer:1. 这当然很好。但有什么用呢?2.是的,还有......?我损失惨重吗?这又不是关于优点的对话,而是关于如何在铲子那里 "磨 "或 "弯 "东西的话题。 那么,任务是什么?要做什么?不是要求用一个节点展示不同班级的作品吗? Dmitry Fedoseev 2013.12.27 12:46 #67 我还设法把不同的对象放到一个数组中,并注意到这样做更直观,因为没有多余的东西:class base{ private: public: }; class cl1:public base{ private: int m_v1; int m_v2; public: void cl1(int v1,int v2){ m_v1=v1; m_v2=v2; } void f1(){ Alert("(1) "+m_v1); } void f2(){ Alert("(1) "+m_v2); } }; class cl2:public base{ private: int m_v1; int m_v2; public: void cl2(int v1,int v2){ m_v1=v1; m_v2=v2; } void f3(){ Alert("(2) "+m_v1); } void f4(){ Alert("(2) "+m_v2); } }; base * a[]; int x1=1; int x2=2; int x() { return(x1=x2); } void OnStart() { ArrayResize(a,10); cl1 * a1; a[0]=new cl1(1,2); a[1]=new cl2(3,4); }那又怎样?什么都没有。重载不起作用,你需要注册类型,然后通过切换。这就是乐趣所在。 Vasiliy Sokolov 2013.12.27 12:46 #68 Integer: 我们这里所说的 "模式 "是什么?是某个人把自己的思维方式强加于人,而所有人都跟着起舞吗?为什么这些 "模式 "被抬得这么高? 不,没什么,别担心...没事的只是有一天,一群程序员归纳出了一些通用算法,并称之为 "模式"。想想看,这些白痴还为此出了一本书:))))))!人们无事可做! Dmitry Fedoseev 2013.12.27 12:47 #69 C-4: 任务是什么?要做什么?我以为你要求展示不同的类如何与一个节点协同工作。 是的这当然很酷。但事实证明,这并不是我们需要的全部。 Vasiliy Sokolov 2013.12.27 12:53 #70 Integer:我还设法将不同的对象放入一个数组中,并注意到它更加清晰,因为没有多余的东西:那又怎样?什么都没有。重载不起作用,你需要注册类型,然后通过切换。这就是乐趣所在。没有额外的东西?你的类是 100% 的冗余。cl1 的所有方法和数据几乎完全被 cl2 类重复,而 base 类则是空的。 12345678910 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
有时,这里的许多人或某些人似乎混淆了狂热与现实、理想与可能。
他们不是拿着铁锹去挖掘,而是老谋深算地炫耀铁锹的主题:"也许这里是边缘,所以要把它磨得锋利些","也许这里有一个转角"....。一切都在铲子的层面上结束。
因为必须使用 switch,所以就失去了意义。如果是这样的话,就可以不做多余的改动,只需为每种类型的对象使用不同的数组即可。所以,"国王是赤身裸体的"。
这证明了工作表可以包含任何类型的对象。另外,如果每种类型都包含有关其类型的附加信息,那么就可以动态识别。这种 "附加信息 "是一个薄弱环节,但不幸的是,MQL 没有提供类型控制工具,所以我们不能没有它。如果有人知道更好的解决方案:请提交代码,我们会很乐意看到它。
好像您的评论暗示您还没有处理过 "模板方法 "模式)))
演示工作表可以包含任何类型的对象。
2.您的评论暗示您没有处理过 "模板方法 "模式)) ))
1. 这当然很好。但它有什么用呢?
2.是的,那么......?我是不是失去了很多?这又是一次关于如何用铲子 "磨 "或 "弯 "东西的对话。
1. 这当然很好。但有什么用呢?
2.是的,还有......?我损失惨重吗?这又不是关于优点的对话,而是关于如何在铲子那里 "磨 "或 "弯 "东西的话题。
我还设法把不同的对象放到一个数组中,并注意到这样做更直观,因为没有多余的东西:
那又怎样?什么都没有。重载不起作用,你需要注册类型,然后通过切换。这就是乐趣所在。
我们这里所说的 "模式 "是什么?是某个人把自己的思维方式强加于人,而所有人都跟着起舞吗?为什么这些 "模式 "被抬得这么高?
任务是什么?要做什么?我以为你要求展示不同的类如何与一个节点协同工作。
我还设法将不同的对象放入一个数组中,并注意到它更加清晰,因为没有多余的东西:
那又怎样?什么都没有。重载不起作用,你需要注册类型,然后通过切换。这就是乐趣所在。
没有额外的东西?你的类是 100% 的冗余。cl1 的所有方法和数据几乎完全被 cl2 类重复,而 base 类则是空的。